
:root{--ink:#292334;--purple:#695082;--deep:#30243f;--lilac:#c9badb;--paper:#faf7f0;--cream:#eee8dd;--gold:#d5b77c;--line:#d8cfdc;--serif:'Sumire Serif','Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Sumire Sans','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}::selection{background:#c8b4df;color:#21182d}:focus-visible{outline:3px solid #b99753;outline-offset:6px}.wrap{width:min(1220px,88%);margin:auto}.eyebrow{font:11px/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--purple);display:flex;align-items:center;gap:14px;margin-bottom:23px}.eyebrow:before{content:'';width:30px;height:1px;background:currentColor}.section-title{font-size:clamp(29px,3.4vw,49px);line-height:1.65;letter-spacing:.1em}.muted{color:#716978}.tiny{font-size:11px;line-height:1.8}.section{padding:110px 0}.flower{width:42px;height:42px;flex-shrink:0;fill:currentColor}.site-header{height:90px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:22px;background:rgba(250,247,240,.96);backdrop-filter:blur(12px);position:sticky;top:0;z-index:30;border-bottom:1px solid #d8cfdc66}.brand{display:flex;gap:11px;align-items:center;color:var(--deep);flex-shrink:0}.brand strong{font-family:var(--serif);font-size:25px;letter-spacing:.07em;font-weight:600}.brand small{display:block;font-size:9px;letter-spacing:.19em;line-height:1}.site-nav{display:flex;align-items:center;gap:27px;font-size:12px}.site-nav a:not(.button){position:relative}.site-nav a:not(.button):after{content:'';position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:.3s}.site-nav a:hover:after{transform:scaleX(1)}.header-tools{display:flex;gap:12px;align-items:center}.sound{border:1px solid var(--line);background:transparent;border-radius:50%;height:39px;width:39px;display:grid;place-items:center;font-size:14px}.sound svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5}.sound[data-muted=true] .waves{opacity:.15}.menu-toggle{display:none;background:none;border:0;font-size:12px}.button{border:1px solid transparent;background:linear-gradient(135deg,#82659a,#634b7b 60%,#574169);color:#fff;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:19px 26px;font-size:13px;letter-spacing:.06em;border-radius:3px 3px 17px 3px;box-shadow:0 5px 0 #3d2c4f,0 12px 24px #3d2c4f25;position:relative;transition:transform .2s,box-shadow .2s,filter .2s;overflow:hidden;isolation:isolate}.button:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#ffffff33 50%,transparent 75%);transform:translateX(-120%);transition:transform .7s;z-index:-1}.button:hover:before{transform:translateX(120%)}.button:hover{transform:translateY(-3px);filter:brightness(1.08)}.button:active{transform:translateY(4px);box-shadow:0 1px 0 #3d2c4f}.button.small{padding:12px 20px;font-size:12px;gap:25px}.button.light{background:linear-gradient(120deg,#fffdf8,#e8dfd0);color:var(--deep);box-shadow:0 5px 0 #baaa8b,0 12px 24px #0002}.button.outline{background:transparent;border-color:#a090ae;color:var(--purple);box-shadow:0 4px 0 #d4cadb}.arrow{display:inline-block;font-size:20px;line-height:1}.text-link{display:inline-flex;align-items:center;gap:45px;border-bottom:1px solid #b7a6c6;padding:12px 0;font-size:13px;color:var(--purple)}.hero{height:min(840px,calc(100svh - 90px));min-height:650px;position:relative;overflow:hidden;background:#51444f;color:#fff}.hero-image{position:absolute;inset:0;object-position:70% 54%;animation:hero-open 1.8s cubic-bezier(.16,1,.3,1) both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#272033eb 0%,#3324389c 36%,#37273512 76%),linear-gradient(0deg,#29203099,transparent 40%)}.hero-content{position:relative;height:100%;padding-top:7.3%;z-index:2}.hero .eyebrow{color:#e2d4e9;margin-bottom:27px}.hero h1{font-size:clamp(43px,5.1vw,76px);line-height:1.65;letter-spacing:.12em;text-shadow:0 2px 28px #0002}.line-mask{display:block;overflow:hidden}.line-mask>span{display:block;animation:title-in 1.3s cubic-bezier(.16,1,.3,1) both;animation-delay:.2s}.line-mask:nth-child(2)>span{animation-delay:.38s}.hero-copy{font-size:14px;letter-spacing:.12em;line-height:2.1;margin-top:22px;animation:fade-up 1.4s .55s both}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:31px;animation:fade-up 1.4s .7s both}.hero-actions .sub-link{font-size:12px;border-bottom:1px solid #ffffff66;padding:8px 0}.hero-bottom{position:absolute;bottom:30px;left:0;width:100%;display:flex;align-items:end;justify-content:space-between}.hero-bottom>p{font-size:11px;letter-spacing:.15em}.hero-bottom small{display:block;letter-spacing:.35em;color:#d1c1d8;font-size:10px}.hero-stamp{position:absolute;right:6%;top:35px;writing-mode:vertical-rl;border:1px solid #fff8;padding:18px 9px;letter-spacing:.35em;font-family:var(--serif);font-size:15px}.photo-strip{display:flex;gap:9px;align-items:center}.photo-strip figure{margin:0;width:94px;height:76px;position:relative;border:1px solid #fff5;overflow:hidden}.photo-strip figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#241b34b0);font-size:9px;text-align:center;padding-top:12px}.photo-strip img{transition:.8s}.photo-strip:hover img{transform:scale(1.1)}.hero-scroll{position:absolute;bottom:20px;left:50%;font-size:9px;letter-spacing:.2em;display:flex;gap:13px;align-items:center;writing-mode:vertical-rl}.hero-scroll:after{content:'';width:1px;height:39px;background:#fff7;animation:scroll-line 2s infinite}.assurance{display:flex;justify-content:center;gap:0;padding:26px 5%;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#ede6f1,#f8f4eb)}.assurance span{padding:0 45px;font-size:13px;border-right:1px solid #c4b5cc}.assurance span:last-child{border:0}.assurance b{font-family:var(--serif);font-size:20px;color:var(--purple);margin-right:6px;font-weight:500}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-text p{margin:27px 0;color:#655e66;line-height:2.3}.intro-photo{height:480px;position:relative;margin:0}.intro-photo:before{content:'';position:absolute;inset:24px -22px -24px 22px;background:#e8dfee;z-index:-1}.intro-photo img{border-radius:2px 90px 2px 2px}.photo-label{position:absolute;bottom:30px;left:-28px;background:var(--paper);padding:18px 26px;color:var(--purple);font-family:var(--serif);font-size:19px;letter-spacing:.09em}.check-section{background:radial-gradient(ellipse at 13% 25%,#e9e0ee 0,transparent 65%),linear-gradient(140deg,#f2edf5,#eae3ee);position:relative;overflow:hidden}.check-section:before{content:'SUMIRE';position:absolute;left:-1%;bottom:-65px;font-size:230px;line-height:1;color:#9c80b30c;letter-spacing:-.04em}.check-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}.check-intro>p{font-size:13px;line-height:2.1;max-width:330px}.check-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:6%;position:relative}.house-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#fffdf966,transparent 70%);min-height:470px;position:relative}.house-drawing{width:90%;max-width:430px;height:auto;filter:drop-shadow(0 20px 15px #58485d15)}.house-drawing .window{fill:#aaa0b4;transition:fill .5s,filter .5s}.house-drawing .window.lit{fill:#ffd98b;filter:drop-shadow(0 0 9px #edba63)}.house-drawing .door{transform-origin:215px 265px;transition:transform 1s;fill:#5c456f}.house-drawing.complete .door{transform:skewY(-7deg) scaleX(.65);fill:#be8e58}.house-stage .house-label{font-family:var(--serif);color:var(--purple);font-size:20px;text-align:center}.progress-label{font-size:11px;letter-spacing:.1em;margin-top:7px;color:#82718f}.progress-dots{display:flex;gap:9px;margin-top:15px}.progress-dots i{height:6px;width:28px;background:#c9bbd2;border-radius:3px;transition:.5s}.progress-dots i.on{background:var(--purple);box-shadow:0 0 10px #a18aae55}.check-list{display:grid;gap:12px;align-content:start}.check-item{background:linear-gradient(115deg,#fffc,#fff8);border:1px solid #fff;box-shadow:0 4px 0 #d8cde0;display:flex;gap:18px;align-items:center;text-align:left;padding:20px 23px;border-radius:3px 3px 14px 3px;transition:.3s}.check-item:hover{transform:translateX(5px);border-color:#ad92c2}.check-item .check-icon{height:24px;width:24px;border:1px solid #b9a7c7;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:14px;flex-shrink:0;transition:.3s}.check-item .check-number{font-family:Georgia,serif;font-style:italic;font-size:12px;color:#9a83ad;margin-left:auto}.check-item[aria-pressed=true]{background:linear-gradient(120deg,#7e6094,#62477a);border-color:#7e6094;color:white;box-shadow:0 4px 0 #453254}.check-item[aria-pressed=true] .check-icon{background:#f6e7c8;color:#5c426e;border-color:#f6e7c8;animation:pop .5s}.check-item[aria-pressed=true] .check-number{color:#dfc9ee}.check-result{margin-top:22px;padding-top:20px;border-top:1px solid #cfc0d9;grid-column:1/-1;display:flex;gap:30px;align-items:center;justify-content:space-between;min-height:110px}.check-result h3{font-size:23px;letter-spacing:.05em}.check-result p{font-size:12px;margin-top:6px;max-width:660px}.reset{font-size:11px;border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:8px;color:#796785}.service-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px}.service-head p{font-size:13px;color:#776e79}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{position:relative;overflow:hidden}.service-photo{height:300px;position:relative;overflow:hidden;border-radius:2px 2px 45px 2px}.service-photo img{transition:transform 1s}.service-card:hover .service-photo img{transform:scale(1.05)}.service-number{position:absolute;left:18px;top:12px;color:white;font:italic 44px/1.2 Georgia;mix-blend-mode:difference}.service-body{padding:27px 3px}.service-body .tag{font-size:10px;letter-spacing:.13em;color:#7d668e}.service-body h3{font-size:25px;line-height:1.6;margin:12px 0 16px;letter-spacing:.06em}.service-body p{font-size:13px;color:#756c76}.service-body .text-link{width:100%;justify-content:space-between;margin-top:18px}.outcome{margin-top:42px;padding:36px 45px;border:1px solid #d6c5bc;background:linear-gradient(110deg,#f1e9dd,#f8f0e4,#eae0e9);display:flex;align-items:center;gap:60px}.outcome h3{font-size:21px;line-height:1.7;flex-shrink:0}.outcome p{font-size:13px;color:#6d606b}.promise{background:#362a42;color:#fff;position:relative;overflow:hidden}.promise:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 100% 90%,#7e5e8a66,transparent 65%);pointer-events:none}.promise .eyebrow{color:#cbb7dc}.promise-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;position:relative;z-index:1}.promise h2{font-size:clamp(29px,3vw,42px);line-height:1.8}.promise-rows article{padding:25px 0;border-top:1px solid #ffffff2b;display:flex;gap:23px}.promise-rows article:last-child{border-bottom:1px solid #ffffff2b}.promise-rows em{font:italic 20px Georgia;color:#bea3cd;padding-top:6px}.promise-rows h3{font-size:23px;letter-spacing:.07em}.promise-rows p{font-size:13px;margin-top:12px;color:#cbbfd2}.promise-note{margin-top:35px;font-size:12px;line-height:2.2;color:#c2b3c9}.representative{display:grid;grid-template-columns:1fr 1.03fr;gap:10%;align-items:center}.portrait{height:570px;position:relative;background:#e1d6c9;margin:0}.portrait img{object-position:center 30%;border-radius:90px 2px 2px 2px}.portrait:before{content:'';position:absolute;inset:25px 25px -25px -25px;background:#ede4d7;z-index:-1}.portrait figcaption{position:absolute;bottom:27px;right:-25px;background:var(--paper);padding:18px 30px;font-size:12px}.portrait figcaption strong{font-family:var(--serif);display:block;font-size:25px;letter-spacing:.18em;font-weight:500}.rep-text p{font-size:14px;line-height:2.25;color:#706770;margin-top:25px}.signature{margin-top:25px;font-family:var(--serif);font-size:20px;color:var(--purple)}.voices{background:linear-gradient(145deg,#efe8e3,#f4efea);padding:95px 0}.voices-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}.voices-heading p{font-size:11px;color:#8b7b89}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.voice{border-top:1px solid #aa98b5;padding-top:24px;position:relative}.voice-label{font-size:11px;color:#7c658d;letter-spacing:.1em}.voice blockquote{font-family:var(--serif);font-size:18px;line-height:2;margin:18px 0}.voice small{font-size:11px;color:#8a7c87}.process{padding-bottom:70px}.process-list{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px;counter-reset:steps}.process-list article{border-top:1px solid var(--line);padding-top:22px}.process-list .step{font:italic 33px Georgia;color:#9982aa}.process-list h3{font-size:22px;margin:15px 0 12px}.process-list p{font-size:13px;color:#766d79}.faq-layout{display:grid;grid-template-columns:1fr 1.55fr;gap:7%}.faq-layout .text-link{margin-top:20px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;gap:19px;align-items:center;padding:25px 0;cursor:pointer;list-style:none;font-size:14px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:before{content:'Q';font:21px Georgia;color:#9a80ad}.faq-list summary:after{content:'+';margin-left:auto;font-size:24px;font-weight:300;color:#9579a8;transition:.3s}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{padding:0 35px 27px;color:#716976;font-size:13px;animation:fade-up .4s both}.contact-band{color:white;background:#5e4a71;position:relative;overflow:hidden}.contact-bg{position:absolute;inset:0;opacity:.18;object-position:center 60%;filter:grayscale(.6)}.contact-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#3d2a52b8,#5f497968)}.contact-inner{position:relative;padding:85px 0;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.contact-band .eyebrow{color:#e8d7ef}.contact-band h2{font-size:clamp(30px,3vw,43px);line-height:1.7}.contact-band p{font-size:13px;margin-top:18px;color:#e1d8e7}.contact-action{display:grid;justify-items:center;gap:21px}.phone{font:42px/1.2 Georgia,serif;letter-spacing:.02em}.phone small{display:block;font:11px/1.5 var(--sans);text-align:center;margin-top:12px;letter-spacing:.08em}.contact-action .button{width:100%;max-width:350px;justify-content:space-between}.company{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;padding:75px 0}.company .brand{margin-bottom:25px}.company-info{font-size:12px;color:#726877}.company-info dl{display:grid;grid-template-columns:90px 1fr;gap:9px;margin:25px 0}.company-info dt{color:#9c899e}.company-info dd{margin:0}.company-links{display:flex;gap:25px;font-size:12px;color:var(--purple);flex-wrap:wrap}.company-photo{height:260px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.company-photo img:first-child{object-position:center 45%}.footer-bottom{padding:18px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:#9b8d9e}.mobile-bar{display:none}.page-top{padding:75px 0 60px;background:radial-gradient(ellipse at 95% 20%,#e2d4e9,transparent 60%),linear-gradient(110deg,#f4eee6,#efe7f0);position:relative;overflow:hidden}.breadcrumb{font-size:11px;color:#9b88a7;margin-bottom:36px}.breadcrumb a{border-bottom:1px solid #bbaaC4}.page-top h1{font-size:clamp(34px,4.3vw,60px);line-height:1.6;letter-spacing:.12em}.page-top p{font-size:14px;color:#7a6b80;margin-top:23px}.page-top .flower{position:absolute;right:8%;top:24%;width:180px;height:180px;color:#bba6ca;opacity:.18;transform:rotate(20deg)}.consult-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:start}.consult-layout h2{font-size:28px;margin-bottom:22px}.consult-layout>div>p{font-size:14px;color:#786e7a}.consult-call{background:linear-gradient(125deg,#eee6f3,#eee5d8);padding:38px;border:1px solid #d8cadf;text-align:center}.consult-call h2{font-size:25px}.consult-call .phone{display:block;color:var(--purple);font-size:36px;margin:24px 0}.consult-call .button{width:100%}.consult-call p{font-size:12px;color:#7f7087;margin-top:20px}.memo{margin-top:32px;border:1px solid var(--line);background:#fffdf8;padding:26px}.memo h3{font-size:20px}.memo ul{padding-left:20px;font-size:13px;color:#78687f}.memo p{font-size:13px}.memo .button{margin-top:20px}.note{font-size:12px;color:#8c7c91;margin-top:24px}.faq-page{max-width:900px}.faq-page h2{font-size:25px;margin:55px 0 20px}.faq-page h2:first-child{margin-top:0}.faq-page summary{font-size:16px;padding:27px 0}.faq-page details p{font-size:14px}.faq-page .faq-cta{margin-top:45px;text-align:center}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(34px);transition:opacity .9s,transform 1.1s cubic-bezier(.16,1,.3,1)}.js .reveal.in-view{opacity:1;transform:none}.reveal-photo{overflow:hidden}.js .reveal-photo img{transform:scale(1.09);transition:transform 1.7s cubic-bezier(.16,1,.3,1)}.js .reveal-photo.in-view img{transform:scale(1)}.pressed{animation:press-bounce .45s!important}.particle{position:fixed;width:8px;height:12px;border-radius:90% 0 90% 0;background:#c7add8;pointer-events:none;z-index:100;animation:petal .8s forwards}.celebration{position:fixed;inset:0;pointer-events:none;z-index:90;display:grid;place-items:center;background:radial-gradient(ellipse,#d8bddc44,transparent 65%);animation:celebrate-show 3.5s both}.celebration-card{padding:36px 55px;background:linear-gradient(125deg,#fffcf2f5,#eee2f4f5);border:1px solid #d6bb88;box-shadow:0 25px 100px #31213a44;text-align:center;border-radius:5px 5px 55px 5px;color:var(--purple);max-width:90vw}.celebration-card .flower{margin:0 auto 20px;width:55px;height:55px}.celebration-card strong{font-family:var(--serif);font-size:27px;font-weight:500;display:block}.celebration-card p{font-size:12px;margin-top:12px}.toast{position:fixed;left:50%;bottom:35px;transform:translateX(-50%);z-index:80;background:var(--deep);color:white;padding:14px 25px;border-radius:3px;box-shadow:0 8px 35px #0003;font-size:13px;animation:fade-up .3s;max-width:90vw;width:max-content}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:10px;z-index:100}.skip-link:focus{top:0}@keyframes title-in{from{transform:translateY(110%);filter:blur(6px)}to{transform:translateY(0);filter:blur(0)}}@keyframes hero-open{from{transform:scale(1.13);filter:brightness(.65)}to{transform:scale(1);filter:brightness(1)}}@keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-line{0%,100%{transform:scaleY(.5);transform-origin:top}60%{transform:scaleY(1);transform-origin:top}}@keyframes pop{50%{transform:scale(1.35)}}@keyframes press-bounce{0%{transform:translateY(0) scale(1)}30%{transform:translateY(4px) scale(.97);filter:brightness(.92)}65%{transform:translateY(-3px) scale(1.02)}100%{transform:translateY(0) scale(1)}}@keyframes petal{to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}@keyframes celebrate-show{0%{opacity:0;transform:scale(.95)}12%,80%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.03)}}
@media(min-width:1500px){.hero-content{padding-top:85px}}
@media(max-width:1100px){.site-nav{gap:17px}.site-nav a{font-size:11px}.site-nav a.optional{display:none}.hero h1{font-size:58px}.assurance span{padding:0 25px}.hero-content{padding-top:70px}.hero{min-height:680px}.service-photo{height:240px}.service-body h3{font-size:21px}.representative{gap:7%}.portrait{height:500px}.check-layout{gap:3%}.check-item{padding:17px}.check-intro>p{max-width:270px}.outcome{gap:35px}.phone{font-size:36px}.company{gap:7%}}
@media(max-width:760px){body{font-size:14px}.wrap{width:88%}.site-header{height:73px;padding:0 5%;gap:12px}.brand strong{font-size:21px}.brand small{font-size:8px}.brand .flower{width:32px;height:32px}.header-tools{gap:10px}.sound{width:33px;height:33px}.menu-toggle{display:block;padding:8px 0}.site-nav{position:absolute;left:0;right:0;top:73px;background:#faf7f0fa;padding:20px 6% 30px;display:none;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #33213f15}.site-nav.open{display:flex}.site-nav a{font-size:14px;padding:9px 0}.site-nav a.optional{display:block}.site-nav .button{padding:15px 22px;margin-top:8px}.hero{height:calc(100svh - 73px);min-height:660px;max-height:820px}.hero-image{object-position:61% 48%;filter:brightness(.85)}.hero-shade{background:linear-gradient(90deg,#2d2036a0,#2d20360a),linear-gradient(0deg,#2b2034e6 0%,#37233c44 70%,#3c2c401a)}.hero-content{padding-top:49px}.hero .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:25px}.hero h1{font-size:clamp(32px,8.3vw,51px);line-height:1.8;letter-spacing:.08em}.hero-copy{font-size:12px;line-height:2.1;margin-top:19px}.hero-actions{display:block;margin-top:26px}.hero-actions .button{padding:16px 23px;font-size:12px;gap:32px}.hero-actions .sub-link{margin-left:17px;font-size:10px}.hero-bottom{bottom:27px}.hero-bottom>p{font-size:9px;line-height:2}.hero-bottom small{font-size:8px;letter-spacing:.13em}.hero-stamp{display:none}.hero-scroll{display:none}.photo-strip{gap:5px}.photo-strip figure{width:53px;height:53px}.photo-strip figcaption{font-size:8px}.assurance{padding:20px 3%}.assurance span{font-size:10px;padding:0 12px;text-align:center;line-height:1.6}.assurance b{font-size:16px;display:block;margin:0}.section{padding:65px 0}.eyebrow{font-size:10px;margin-bottom:18px}.section-title{font-size:29px;line-height:1.7;letter-spacing:.07em}.intro{grid-template-columns:1fr;gap:36px}.intro-text p{font-size:13px;margin:22px 0;line-height:2.2}.intro-photo{height:330px;margin:0 12px 10px 0}.intro-photo:before{inset:15px -13px -15px 13px}.intro-photo img{border-radius:2px 60px 2px 2px}.photo-label{bottom:21px;left:-13px;padding:14px 19px;font-size:16px}.check-intro{display:block;margin-bottom:24px}.check-intro>p{font-size:12px;max-width:none;margin-top:17px}.check-layout{grid-template-columns:1fr;gap:20px}.house-stage{min-height:0;padding:0 0 12px}.house-drawing{max-width:255px;margin:-16px auto -14px}.house-stage .house-label{font-size:18px}.progress-label{font-size:10px}.progress-dots{margin-top:10px}.check-list{gap:11px}.check-item{padding:16px 14px;gap:11px;font-size:13px}.check-item .check-icon{height:21px;width:21px}.check-item .check-number{font-size:10px}.check-result{margin-top:5px;display:block;padding-top:24px}.check-result h3{font-size:20px}.check-result p{font-size:12px;margin-top:10px}.check-result .button{margin-top:22px;width:100%;padding:17px 22px}.check-section:before{font-size:120px;bottom:-20px}.service-head{display:block;margin-bottom:30px}.service-head p{margin-top:17px;font-size:12px}.service-grid{grid-template-columns:1fr;gap:22px}.service-photo{height:260px;border-radius:2px 2px 40px 2px}.service-body{padding:22px 0 12px}.service-body h3{font-size:24px}.service-body p{font-size:13px;max-width:none}.service-body .text-link{margin-top:12px}.outcome{margin-top:25px;display:block;padding:26px}.outcome h3{font-size:21px}.outcome p{font-size:12px;margin-top:16px}.promise-layout{grid-template-columns:1fr;gap:30px}.promise h2{font-size:29px}.promise-note{margin-top:21px;font-size:12px}.promise-rows article{padding:23px 0;gap:20px}.promise-rows h3{font-size:21px}.promise-rows p{font-size:12px}.representative{grid-template-columns:1fr;gap:45px}.portrait{height:420px;margin:0 12px}.portrait img{object-position:center 25%;border-radius:60px 2px 2px 2px}.portrait:before{inset:18px 18px -18px -18px}.portrait figcaption{right:-12px;padding:13px 22px}.portrait figcaption strong{font-size:23px}.rep-text p{font-size:13px;line-height:2.2;margin-top:21px}.voices{padding:60px 0}.voices-heading{display:block}.voices-heading p{margin-top:15px;font-size:10px}.voice-grid{grid-template-columns:1fr;gap:28px}.voice{padding-top:19px}.voice blockquote{font-size:18px;margin:12px 0}.voice small{font-size:10px}.process-list{grid-template-columns:1fr;gap:25px;margin-top:30px}.process-list article{position:relative;padding:21px 0 0 55px}.process-list .step{position:absolute;left:0;top:23px;font-size:27px}.process-list h3{margin:0 0 10px;font-size:21px}.process-list p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:25px}.faq-layout .text-link{margin-top:10px}.faq-list summary{font-size:13px;padding:22px 0;gap:12px}.faq-list details p{padding:0 25px 23px;font-size:12px}.contact-inner{padding:55px 0;grid-template-columns:1fr;gap:30px}.contact-band h2{font-size:29px}.contact-band p{font-size:12px}.contact-action{gap:25px;align-items:start;justify-items:start}.phone{font-size:35px}.phone small{text-align:left;font-size:10px}.contact-action .button{max-width:none}.company{grid-template-columns:1fr;padding:50px 0;gap:30px}.company-photo{height:210px}.company-info{font-size:12px}.company-info dl{grid-template-columns:75px 1fr}.footer-bottom{padding:18px 6% 100px;gap:10px;font-size:8px}.mobile-bar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:.9fr 1.1fr;gap:9px;background:#faf7f0ed;backdrop-filter:blur(12px);padding:10px 15px calc(10px + env(safe-area-inset-bottom));z-index:25;border-top:1px solid #e1d5e6}.mobile-bar .button{padding:12px 15px;font-size:11px;gap:8px;justify-content:center;box-shadow:0 3px 0 #3d2c4f}.mobile-bar .button.light{box-shadow:0 3px 0 #baaa8b}.page-top{padding:30px 0 40px}.breadcrumb{margin-bottom:26px;font-size:10px}.page-top h1{font-size:34px}.page-top p{font-size:12px;margin-top:18px}.page-top .flower{width:110px;height:110px;right:-20px;top:50%}.consult-layout{grid-template-columns:1fr;gap:35px}.consult-layout h2{font-size:25px}.consult-layout>div>p{font-size:13px}.consult-call{padding:30px 23px}.consult-call .phone{font-size:34px}.memo{padding:22px}.memo .button{font-size:12px;padding:15px 19px;gap:20px}.faq-page h2{font-size:23px;margin:40px 0 19px}.faq-page summary{font-size:14px}.faq-page details p{font-size:13px}.celebration-card{padding:30px 25px}.celebration-card strong{font-size:22px}.celebration-card p{font-size:11px}.toast{bottom:95px;font-size:12px}html{scroll-padding-top:88px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}.js .reveal-photo img{transform:none}.particle{display:none}.celebration{animation:none;transform:none}.hero-image{animation:none}.line-mask>span{animation:none}}
.button-arrived{animation:button-arrival .7s cubic-bezier(.16,1,.3,1) both}@keyframes button-arrival{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
/* Second edition: a conversation-led opening and visual service paths. */
.hero-image{object-position:center 43%}.hero-shade{background:linear-gradient(90deg,#271d32ed 0%,#352541ab 37%,#35254116 75%),linear-gradient(0deg,#261b31dc,transparent 44%)}.hero h1{font-size:clamp(40px,4.55vw,68px);line-height:1.7;letter-spacing:.08em}.hero-door{position:absolute;top:0;bottom:0;width:50.1%;z-index:8;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent 91px,#fff1 92px,#fff1 93px),linear-gradient(120deg,#463052,#251c30);box-shadow:0 0 70px #160c2299;animation:door-left 1.65s cubic-bezier(.76,0,.24,1) .1s both}.hero-door-left{left:0;border-right:1px solid #dbc29a55}.hero-door-right{right:0;animation-name:door-right;border-left:1px solid #dbc29a55}.hero-door:after{content:'';position:absolute;top:49%;right:23px;width:6px;height:55px;border-radius:6px;background:linear-gradient(90deg,#927144,#e6cd9e,#bc9967);box-shadow:2px 1px 8px #0008}.hero-door-right:after{left:23px;right:auto}.line-mask>span{animation-delay:.65s;animation-duration:1.45s}.line-mask:nth-child(2)>span{animation-delay:.85s}.hero-copy{animation-delay:1s}.hero-actions{animation-delay:1.15s}.hero-advisor{position:absolute;right:0;bottom:150px;width:285px;animation:fade-up 1.1s 1.2s both}.hero-advisor a{display:flex;align-items:center;gap:14px;background:linear-gradient(120deg,#fffdf5ee,#e6dbeadf);border:1px solid #fff8;padding:17px 19px;border-radius:3px 3px 25px 3px;color:#4b365c;box-shadow:0 9px 40px #30203930;backdrop-filter:blur(9px)}.hero-advisor img{width:53px;height:62px;object-position:center 25%;border-radius:30px 30px 3px 3px}.hero-advisor small{font-size:10px;display:block}.hero-advisor strong{font:18px/1.7 var(--serif);display:block;margin-top:3px}.hero-photo-note{font-size:9px;position:absolute;right:0;bottom:8px;opacity:.7;letter-spacing:.05em}.hero-scroll{left:49%}.js .reveal-photo{clip-path:inset(0 0 4% 0);transition:clip-path 1.3s cubic-bezier(.16,1,.3,1),opacity 1s,transform 1.2s}.js .reveal-photo.in-view{clip-path:inset(0)}.js .service-photo img{transform:scale(1.1);transition:transform 1.5s cubic-bezier(.16,1,.3,1)}.js .in-view .service-photo img{transform:scale(1)}.button{box-shadow:0 6px 0 #3d2c4f,0 14px 27px #3d2c4f33,inset 0 1px 0 #ffffff40;border-top-color:#fff4}.button:active{box-shadow:0 1px 0 #3d2c4f,inset 0 2px 6px #22152e55}.sound,.menu-toggle,.reset{box-shadow:0 3px 0 #d1c5d6;transition:box-shadow .2s,transform .2s;background:linear-gradient(135deg,#fffdf8,#eee6f1)}.sound:active,.menu-toggle:active,.reset:active{box-shadow:0 1px 0 #b7a5c1,inset 0 2px 3px #7c648522;transform:translateY(2px)}.menu-toggle{border-radius:4px;padding:7px 10px}.reset{border:1px solid #d5c5de;border-radius:4px;padding:7px 14px;text-decoration:none}.action-key{position:fixed;z-index:101;pointer-events:none;color:#d8b477;width:38px;height:38px;filter:drop-shadow(0 2px 6px #55376144);animation:key-flight .85s ease-out forwards}.action-key svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.key-ring{position:fixed;width:10px;height:10px;border:1px solid #d5b77c;border-radius:50%;z-index:100;pointer-events:none;animation:key-ring .7s ease-out forwards}.window-flash{animation:window-light .7s ease-out}.house-drawing.complete{filter:drop-shadow(0 0 30px #e6c07980)}.check-response{padding:10px 17px;border:1px solid #c9b7d4;border-radius:3px 3px 14px 3px;background:#faf7f0bb;font-size:12px;color:#715383;text-align:center;max-width:350px;margin-top:15px;min-height:46px;line-height:1.9}.check-response.changed{animation:fade-up .4s both}.house-label{max-width:100%}.promise-image{height:215px;margin:28px 0 0;position:relative;overflow:hidden;border-radius:3px 3px 45px 3px}.promise-image img{opacity:.8}.promise-image figcaption{position:absolute;left:22px;bottom:17px;font:20px var(--serif);text-shadow:0 1px 12px #000;background:#35213f88;padding:10px 15px}.journey-section{background:radial-gradient(ellipse at 90% 20%,#d8c7e266,transparent 55%),linear-gradient(120deg,#eee3d3,#f4eee5);padding:85px 0 100px}.journey-heading{display:flex;gap:60px;align-items:end;justify-content:space-between;margin-bottom:35px}.journey-heading>p{font-size:13px;color:#7b697e;line-height:2.1}.journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.journey-tabs button{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #d4bdcc;padding:19px 25px;background:linear-gradient(125deg,#fcf8ef,#f3e9ee);box-shadow:0 4px 0 #d8c5d4;border-radius:3px 3px 18px 3px;font:20px var(--serif);transition:background .4s,color .4s,transform .3s}.journey-tabs button:hover{transform:translateY(-3px)}.journey-tabs button[aria-selected=true]{background:linear-gradient(130deg,#79578d,#4f355f);color:#fff;border-color:#79578d;box-shadow:0 4px 0 #37243e}.tab-key{font:italic 14px Georgia;color:#ae8e70}.journey-tabs button[aria-selected=true] .tab-key{color:#e8c98e}.journey-panel{display:grid;grid-template-columns:1fr 1fr;background:#fffcf7;border:1px solid #e1d3cb;box-shadow:0 18px 50px #654e6e13;min-height:520px}.journey-picture{position:relative;overflow:hidden;min-height:100%;isolation:isolate}.journey-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#2f1e40cc,transparent 65%);pointer-events:none}.journey-picture img{position:absolute;inset:0;transition:transform 1s,opacity .4s}.journey-picture-title{position:absolute;left:35px;bottom:40px;z-index:1;font:32px/1.75 var(--serif);color:white;letter-spacing:.06em}.journey-image-caption{position:absolute;left:20px;top:20px;font-size:9px;letter-spacing:.1em;z-index:1;color:white;background:#45324c88;padding:4px 10px}.journey-copy{padding:42px}.journey-kicker{font-size:11px;letter-spacing:.15em;color:#9b7ca9;margin-bottom:13px}.journey-copy h3{font-size:27px;line-height:1.7;letter-spacing:.04em;min-height:92px}.journey-steps{list-style:none;margin:23px 0;padding:0;display:grid;gap:20px}.journey-steps li{display:grid;grid-template-columns:62px 1fr;gap:14px;position:relative}.journey-steps li+li:before{content:'';position:absolute;top:-14px;left:25px;width:1px;height:9px;background:#bba3cb}.journey-steps span{font-size:10px;border:1px solid #c7b1d1;align-self:start;display:inline-flex;align-items:center;justify-content:center;border-radius:30px;padding:3px 5px;color:#7e5e91;background:linear-gradient(130deg,#fff,#f0e6f4)}.journey-steps p{font-size:13px;color:#786a7a;line-height:1.9}.journey-caveat{color:#9d8e9d;margin-top:19px;font-size:10px}.journey-panel.switching .journey-picture img{animation:scene-image .7s cubic-bezier(.16,1,.3,1) both}.journey-panel.switching .journey-copy{animation:fade-up .45s ease-out both}.journey-panel.switching .journey-picture-title{animation:fade-up .65s ease-out both}.celebration-card{position:relative;overflow:hidden;border:2px solid #dcc390;box-shadow:0 0 0 7px #fffbeb55,0 0 90px #e3bf7866,0 25px 100px #31213a44}.celebration-card:before{content:'';position:absolute;inset:-80%;background:conic-gradient(from 0deg,transparent,#e3bb6966,transparent 12%,transparent 35%,#fff9,transparent 47%);animation:celebration-rays 5s linear infinite;z-index:-1}.celebration-ribbon{display:inline-block;margin:14px 0 0;border-top:1px solid #c4a473;border-bottom:1px solid #c4a473;padding:7px 20px;color:#8c6b3b;font:10px/1.5 var(--sans);letter-spacing:.2em}.celebration-house{width:130px;height:auto;display:block;margin:5px auto 12px;filter:drop-shadow(0 5px 9px #7c5a9333)}
@keyframes door-left{to{transform:translateX(-102%)}}@keyframes door-right{to{transform:translateX(102%)}}@keyframes key-flight{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(-30deg)}25%{opacity:1}100%{opacity:0;transform:translate(-10%,-170%) scale(1.2) rotate(45deg)}}@keyframes key-ring{to{transform:translate(-50%,-50%) scale(12);opacity:0}}@keyframes window-light{0%{filter:drop-shadow(0 0 0px #ffdb99)}45%{filter:drop-shadow(0 0 19px #ffdb99)}100%{filter:drop-shadow(0 0 9px #edba63)}}@keyframes scene-image{from{opacity:.4;transform:scale(1.1);clip-path:inset(0 10% 0 0)}to{opacity:1;transform:scale(1);clip-path:inset(0)}}@keyframes celebration-rays{to{rotate:360deg}}
@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:45px}.hero-advisor{width:250px;bottom:130px}.journey-copy{padding:30px}.journey-copy h3{font-size:24px}.journey-tabs button{font-size:17px;padding:17px 20px}}
@media(max-width:760px){.hero{min-height:690px}.hero-image{object-position:62% 32%}.hero-shade{background:linear-gradient(90deg,#30213991,#30213900),linear-gradient(0deg,#281b35f5 0%,#2d1e3c72 60%,#3623421a 100%)}.hero-content{padding-top:42px}.hero h1{font-size:clamp(27px,6.85vw,47px);line-height:1.95;letter-spacing:.045em}.hero .eyebrow{margin-bottom:15px}.hero-copy{font-size:12px;margin-top:17px}.hero-actions{margin-top:22px}.hero-actions .sub-link{display:block;width:max-content;margin:10px 0 0;font-size:11px}.hero-advisor{right:0;left:0;bottom:112px;width:242px}.hero-advisor a{padding:12px 15px;gap:12px}.hero-advisor img{width:42px;height:48px}.hero-advisor strong{font-size:16px}.hero-advisor small{font-size:9px}.hero-bottom{bottom:34px}.hero-photo-note{font-size:8px;bottom:9px}.hero-door{animation-duration:1.45s}.hero-door:after{height:45px;right:15px}.hero-door-right:after{left:15px;right:auto}.check-response{font-size:11px;padding:9px 13px;margin-top:12px;min-height:42px;max-width:310px}.house-stage .house-label{font-size:16px}.journey-section{padding:60px 0 65px}.journey-heading{display:block;margin-bottom:27px}.journey-heading>p{font-size:12px;margin-top:18px}.journey-tabs{gap:7px;margin-bottom:15px}.journey-tabs button{padding:14px 8px;font-size:13px;gap:7px;flex-wrap:wrap;justify-content:center;min-height:70px;border-radius:3px 3px 13px 3px}.tab-key{display:block;width:100%;font-size:10px}.journey-tabs button>span:last-child{display:none}.journey-panel{grid-template-columns:1fr;min-height:0}.journey-picture{height:270px;min-height:0}.journey-picture-title{font-size:26px;left:23px;bottom:25px}.journey-image-caption{font-size:8px;left:16px;top:15px}.journey-copy{padding:28px 23px}.journey-copy h3{font-size:23px;min-height:0}.journey-steps{gap:21px;margin:22px 0}.journey-steps p{font-size:12px}.journey-steps li{grid-template-columns:56px 1fr;gap:11px}.journey-copy .button{width:100%;font-size:12px;padding:15px 20px}.journey-caveat{font-size:9px}.promise-image{height:190px;margin-top:25px}.promise-image figcaption{font-size:17px;left:16px;bottom:14px;padding:7px 12px}.menu-toggle{font-size:10px;padding:7px}.celebration-card strong{font-size:21px}.celebration-card{padding:25px 20px}.celebration-ribbon{font-size:9px;padding:7px 11px}.celebration-house{width:105px}.action-key{width:31px;height:31px}}
@media(prefers-reduced-motion:reduce){.hero-door,.action-key,.key-ring{display:none}.js .reveal-photo{clip-path:none}.js .service-photo img{transform:none}.journey-panel.switching .journey-picture img,.journey-panel.switching .journey-copy{animation:none}.celebration-card:before{display:none}}
.hero-shade{background:linear-gradient(90deg,#271d32ed 0%,#352541b0 52%,#35254122 90%),linear-gradient(0deg,#261b31dc,transparent 44%)}
@media(max-width:760px){.hero-shade{background:linear-gradient(90deg,#30213991,#30213900),linear-gradient(0deg,#281b35f5 0%,#2d1e3c85 65%,#36234238 100%)}}
/* Finishing pass: readable real-world details, responsive media and a useful consultation memo. */
.photo-label small{display:block;font:10px/1.7 var(--sans);letter-spacing:.08em;margin-bottom:5px}.intro-photo>img{object-position:50% 43%}.voice-title{font-size:25px;line-height:1.7;letter-spacing:.045em;margin-top:17px;color:#5f456e}.voice blockquote{font-family:var(--sans);font-size:13px;line-height:2.1;color:#786978;margin-top:16px}.voice{background:linear-gradient(145deg,#fff9,#fff0 70%);padding:25px 22px 16px;border-top:2px solid #a992b8;border-radius:1px 1px 30px 1px}.process-photo{height:170px;margin-bottom:24px;overflow:hidden;border-radius:2px 2px 30px 2px}.process-photo img{transition:transform 1.1s}.process-list article:hover .process-photo img{transform:scale(1.035)}.process-list .step{position:relative;display:inline-block}.consult-human{display:grid;grid-template-columns:118px 1fr;gap:24px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line);margin-top:12px}.consult-human>img{height:150px;object-position:center 22%;border-radius:50px 3px 3px 3px}.consult-human small{font-size:11px;color:#9c83a8}.consult-human h3{font-size:24px;margin:5px 0 12px;letter-spacing:.12em}.consult-human p{font-size:12px;color:#78697d}.consult-human .text-link{padding:8px 0;margin-top:6px;font-size:11px}.consult-location{padding:20px 0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:7px 16px;font-size:12px}.consult-location span{color:#9b83a4}.consult-location strong{font-weight:500}.consult-location a{color:var(--purple);text-decoration:underline;text-underline-offset:4px}.memo-label{display:flex;gap:10px;align-items:center;margin-top:23px;font-size:12px}.memo-label span{font-size:9px;border:1px solid #d4c2de;border-radius:3px;color:#95809e;padding:1px 6px}#memo-extra{display:block;width:100%;resize:vertical;min-height:95px;max-height:300px;margin:10px 0;padding:14px;border:1px solid #cbbbd3;border-radius:3px;background:#fffcf8;color:var(--ink);font:14px/1.9 var(--sans);box-shadow:inset 0 2px 6px #917b9c0c}#memo-extra::placeholder{color:#998b9d}#memo-extra-note{font-size:10px}.hero-door{will-change:transform}.hero-door.finished{display:none}.button,.text-link,.check-item,summary,.sound,.menu-toggle,.reset,.journey-tabs button{touch-action:manipulation}.section-title{overflow-wrap:anywhere}.check-item{min-height:64px}.check-list{min-width:0}.service-card,.journey-copy,.intro-text,.rep-text{min-width:0}.journey-panel{scroll-margin-top:100px}body{overflow-x:clip}.sound{min-width:39px}.site-nav a:not(.button){padding-top:10px;padding-bottom:10px}.faq-list summary:after{flex-shrink:0}.faq-list summary:before{flex-shrink:0}.celebration-card{isolation:isolate}.celebration-card>.flower{width:35px;height:35px;margin-bottom:5px}.celebration-card .house-drawing{max-width:140px}.scene-photo-error{font-size:12px;color:var(--purple);padding:20px}
@media(max-width:760px){.photo-label small{font-size:9px}.voice{padding:21px 20px 15px}.voice-title{font-size:24px;margin-top:13px}.voice blockquote{font-size:13px;line-height:2}.voice-grid{gap:22px}.process-list{gap:28px}.process-list article{padding:20px 0 0 105px;min-height:142px}.process-photo{position:absolute;left:0;top:20px;width:85px;height:114px;margin:0;border-radius:2px 2px 25px 2px}.process-list .step{position:static;font-size:16px;line-height:1;margin-bottom:9px;display:block}.process-list h3{font-size:19px;margin-bottom:8px}.process-list p{font-size:12px;line-height:1.9}.consult-human{grid-template-columns:92px 1fr;gap:20px;padding:22px 0}.consult-human>img{height:128px;border-radius:36px 3px 3px 3px}.consult-human h3{font-size:22px}.consult-human small{font-size:10px}.consult-human p{font-size:11px}.consult-location{font-size:11px;gap:6px 12px}.memo-label{font-size:12px}#memo-extra{font-size:16px;line-height:1.7;padding:12px}.sound{min-width:36px;width:36px;height:36px}.header-tools{gap:7px}.menu-toggle{min-height:38px}.reset{min-height:40px}.brand{gap:8px}.hero-advisor a{min-height:72px}.hero-bottom .photo-strip figure{height:48px;width:48px}.hero-photo-note{right:0;bottom:10px}.footer-bottom{padding-bottom:115px}.hero h1{font-size:clamp(25px,6.8vw,47px)}.journey-copy h3{overflow-wrap:anywhere}.check-item{font-size:12px;line-height:1.8;padding:15px 13px;min-height:62px}.check-item>span:nth-child(2){flex:1}.check-item .check-number{flex-shrink:0}.hero{min-height:690px}.hero-actions .button{min-height:54px}.mobile-bar .button{min-height:46px}.phone{font-variant-numeric:tabular-nums}.company-links a{padding:5px 0}}
@media(max-width:350px){.brand strong{font-size:19px}.brand small{font-size:7px}.brand .flower{width:28px;height:28px}.site-header{gap:6px}.sound{min-width:33px;width:33px;height:34px}.header-tools{gap:5px}.menu-toggle{padding:6px;font-size:9px}.hero .eyebrow{font-size:8px}.hero h1{font-size:24px}.hero-copy{font-size:11px}.hero .button{font-size:11px;padding:15px 18px;gap:17px}.hero-advisor{bottom:112px}.hero-bottom .photo-strip figure{width:42px;height:45px}.hero-bottom>p{font-size:8px}.contact-action .phone{font-size:31px}.journey-tabs button{font-size:12px}}
/* Edition four: individual chapters, tactile controls and a personal conversation path. */
.preparation{position:relative;background:radial-gradient(ellipse at 85% 25%,#e8d9c7b0,transparent 55%),linear-gradient(120deg,#faf7ef,#eee5f3);overflow:hidden}
.preparation:before{content:'';position:absolute;width:480px;height:480px;right:-220px;bottom:-230px;border:1px solid #bda1c755;border-radius:50%;box-shadow:0 0 0 45px #c8b4d514,0 0 0 90px #c8b4d50e;pointer-events:none}
.preparation-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:center;position:relative}
.preparation-photo{margin:0;position:relative;min-width:0;aspect-ratio:4/5;max-height:600px;border-radius:150px 4px 4px 4px;overflow:hidden;background:#dfd4e5}
.preparation-photo img{object-position:center 24%}
.preparation-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#291d35ed);pointer-events:none}
.preparation-photo figcaption{position:absolute;z-index:1;bottom:32px;left:30px;color:#fff;font:27px/1.7 var(--serif);letter-spacing:.07em}
.preparation-photo figcaption span{display:block;font:12px/1.9 var(--sans);margin-top:15px;letter-spacing:.15em}
.preparation-copy{min-width:0}.context-label{font-size:11px;color:#725483;letter-spacing:.06em;display:block;margin:24px 0 10px}
.call-script{margin:0 0 22px;padding:21px 24px;background:linear-gradient(120deg,#fffef8,#f4edf6);border:1px solid #d6c2db;border-left:3px solid #9b78ad;border-radius:3px 24px 24px 3px;box-shadow:0 9px 25px #5b3f6b0b;font:clamp(19px,2vw,27px)/1.85 var(--serif);color:#543b66;overflow-wrap:anywhere}
.preparation-note{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid #cbbbd155}
.preparation-note>span{font-size:11px;color:#83698f;padding-top:3px}.preparation-note>p{font-size:13px;line-height:2;color:#5e5265}
.preparation-links{display:flex;flex-wrap:wrap;gap:15px 22px;align-items:center;margin:27px 0 20px}.preparation-links .text-link{font-size:11px;gap:12px}
.consult-script{margin-top:30px;padding:0 0 24px;border-bottom:1px solid #d8cfdc}.consult-script>.context-label{margin-top:0}.consult-script .call-script{font-size:22px}.consult-script>p{font-size:13px;color:#6b5875}.consult-script>.tiny{margin-top:12px;font-size:11px}
.faq-personal{background:radial-gradient(ellipse at top right,#e5d4ed,transparent 70%),linear-gradient(135deg,#f5eee2,#f1eaf5);border:1px solid #dacbdc;padding:30px;margin-bottom:40px;border-radius:4px 4px 35px 4px}.faq-personal[hidden]{display:none}.faq-personal .eyebrow{margin-bottom:12px}.faq-personal>p{font-size:13px}.faq-personal .text-link{margin-top:14px;font-size:12px}
#faq-suggestions{display:grid;gap:10px;margin-top:22px}.faq-suggestion{display:block;padding:14px 18px!important;background:linear-gradient(125deg,#fffef8,#f0e5f4);border:1px solid #cfb8d9;box-shadow:0 3px 0 #c1accb;border-radius:3px 3px 12px 3px;font-size:13px;color:#654776}.faq-suggestion:after{content:' ↓';color:#9a7c54}
details{scroll-margin-top:110px}details[open]>p{animation:answer-unfold .38s ease-out both}
.tactile-link{display:inline-block;position:relative;border-radius:3px;box-shadow:0 2px 0 #b4a1bf38;transition:box-shadow .2s,filter .2s,background .2s;touch-action:manipulation}.tactile-link:hover{box-shadow:0 3px 0 #ac8fbd88}.hero .tactile-link{box-shadow:0 2px 0 #eddec44d}.hero-advisor .tactile-link{display:flex}.site-nav .tactile-link{padding-inline:3px}.text-link.tactile-link{display:inline-flex}.phone,.brand{touch-action:manipulation}
a.is-down,button.is-down,summary.is-down{translate:0 3px;scale:.985;filter:brightness(.94);box-shadow:0 1px 0 #5d426f77,inset 0 2px 5px #37233f22!important}
.button.pressed,.check-item.pressed,.journey-tabs button.pressed{animation:press-bounce .45s!important}.tactile-link.pressed,.brand.pressed,.phone.pressed,summary.pressed{animation:link-rebound .45s!important}
summary{box-shadow:0 2px 0 #c5b4d023;border-radius:3px;transition:background .2s,box-shadow .2s}.sound,.menu-toggle,.reset{min-height:44px;min-width:44px}
.js .reveal[data-reveal=letter]{transform:translateY(25px);clip-path:inset(0 0 12% 0);transition:opacity .9s,transform 1.1s,clip-path 1.2s cubic-bezier(.16,1,.3,1)}
.js .reveal[data-reveal=photo]{transform:translateY(22px) scale(.97);clip-path:inset(0 8% 0 0);transition:opacity 1s,transform 1.5s cubic-bezier(.16,1,.3,1),clip-path 1.5s cubic-bezier(.16,1,.3,1)}
.js .reveal[data-reveal=card]{transform:perspective(1000px) translateY(35px) rotateX(7deg);transform-origin:50% 100%;transition:opacity .8s,transform 1s cubic-bezier(.16,1,.3,1)}
.js .reveal[data-reveal=line]{transform:translateX(30px);transition:opacity .8s,transform 1s cubic-bezier(.16,1,.3,1)}
.js .reveal.in-view[data-reveal]{opacity:1;transform:none;clip-path:inset(0)}
.house-stage{transition:background .6s}.house-stage[data-scene="0"]{background:radial-gradient(ellipse at 50% 45%,#fff4d999,transparent 70%)}.house-stage[data-scene="1"]{background:radial-gradient(ellipse at 50% 45%,#d8e4caaa,transparent 70%)}.house-stage[data-scene="2"]{background:radial-gradient(ellipse at 50% 45%,#ecd3e7bb,transparent 70%)}
.preparation[data-theme="1"]{background:radial-gradient(ellipse at 85% 25%,#dfe6cdbb,transparent 55%),linear-gradient(120deg,#faf7ef,#eee5f3)}
.hero .hero-image{object-position:66% 40%}.hero h1{max-width:1000px}.hero-content .eyebrow{letter-spacing:.15em}.hero-scroll{font-size:10px;letter-spacing:.1em}.service-head .eyebrow,.voices .eyebrow,.rep-text .eyebrow{letter-spacing:.13em}
@keyframes link-rebound{0%{translate:0 0;scale:1}30%{translate:0 3px;scale:.985;box-shadow:inset 0 2px 5px #37233f22}65%{translate:0 -2px;scale:1.01}100%{translate:0 0;scale:1}}
@keyframes answer-unfold{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:761px) and (max-width:1100px){.preparation-layout{gap:5%;grid-template-columns:.8fr 1.2fr}.preparation-note{grid-template-columns:1fr;gap:6px}.preparation-photo figcaption{font-size:22px;left:22px}.site-nav{gap:14px}.hero-advisor{bottom:115px}.hero-actions{max-width:650px}}
@media(max-width:760px){
 .preparation-layout{grid-template-columns:1fr;gap:30px}.preparation-photo{aspect-ratio:5/3;max-height:310px;border-radius:65px 3px 3px 3px}.preparation-photo img{object-position:center 24%}.preparation-photo figcaption{font-size:20px;left:22px;bottom:22px}.preparation-photo figcaption span{font-size:10px;margin-top:6px}.preparation-photo:after{inset:10% 0 0;background:linear-gradient(0deg,#291d35e6,transparent 90%)}
 .preparation-note{grid-template-columns:1fr;gap:5px;padding:13px 0}.preparation-note>p{font-size:12px}.preparation-note>span{font-size:10px}.call-script{font-size:20px;padding:17px 20px}.context-label{font-size:10px;margin-top:22px}.preparation-links{display:grid;gap:14px;margin:23px 0 17px}.preparation-links .button{font-size:12px}.preparation-links .text-link{justify-self:start}.preparation-copy>.tiny{font-size:10px}
 .hero{height:auto;min-height:0}.hero-content{padding-top:35px;padding-bottom:36px;height:auto}.hero h1{font-size:clamp(23px,6.2vw,42px);line-height:1.9;letter-spacing:.035em}.hero .hero-image{object-position:66% 30%}.hero-advisor{position:relative;inset:auto;width:min(270px,100%);margin-top:28px;animation-delay:1.25s}.hero-bottom{position:relative;bottom:auto;left:auto;margin-top:27px;gap:15px}.hero-photo-note{position:relative;display:block;inset:auto;text-align:right;margin-top:9px}.hero-scroll{display:none}.hero-actions{flex-wrap:wrap;gap:8px}.hero-actions .sub-link{margin:10px 0 0}.hero-copy{font-size:12px;letter-spacing:.04em}.hero-stamp{right:4%;top:22px;padding:12px 6px;font-size:11px;opacity:.65}.hero h1{position:relative;z-index:1}.hero-content .eyebrow{font-size:9px;letter-spacing:.08em;max-width:88%}.section{padding:65px 0}.hero-actions .button{min-height:54px}.sound{height:44px;width:44px}.menu-toggle{padding:6px 9px}.site-header{gap:9px}.header-tools{gap:7px}.brand strong{font-size:21px}.brand small{font-size:8px}.brand .flower{width:31px;height:31px}
 .consult-script .call-script{font-size:19px}.faq-personal{padding:22px 19px;margin-bottom:30px}.faq-personal .eyebrow{font-size:10px;letter-spacing:.05em}.faq-personal>p{font-size:12px}.faq-suggestion{font-size:12px;line-height:1.8;min-height:48px}.faq-personal .text-link{font-size:11px}.faq-personal .eyebrow:before{width:20px;flex-shrink:0}.company-links a{padding:9px 2px}.page-top h1{font-size:clamp(29px,8vw,38px)}.contact-action .button{white-space:normal;line-height:1.8}.celebration-card{max-height:calc(100svh - 110px);overflow:auto}.journey-heading>p br{display:none}.check-intro>p{max-width:none}.hero-bottom .photo-strip figure{width:48px;height:48px}
}
@media(max-width:350px){.site-header{padding-inline:4%;gap:5px}.header-tools{gap:5px}.brand{gap:6px}.brand strong{font-size:18px}.brand small{font-size:6px}.brand .flower{width:26px;height:26px}.menu-toggle{font-size:9px;padding:5px}.sound{width:44px}.hero-bottom .photo-strip figure{width:40px;height:44px}.hero .hero-copy{font-size:11px}.hero-stamp{display:none}.hero h1{font-size:22px}}
@media(prefers-reduced-motion:reduce){.js .reveal[data-reveal]{opacity:1;transform:none;clip-path:none}a.is-down,button.is-down,summary.is-down{translate:none;scale:1}.pressed{animation:none!important}details[open]>p{animation:none}.button-arrived{animation:none}.hero-advisor{animation:none}.js .service-photo img{transform:none}}

@media(prefers-reduced-motion:reduce){html body .pressed{animation:none!important}}
/* Fifth edition: fewer repeated chapters; all selected concerns shape one conversation. */
.chapter-trail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(1000px,88%);margin:25px auto 0;border-bottom:1px solid #d9cbdc;padding-bottom:20px;gap:20px}
.chapter-trail a{display:flex;align-items:center;justify-content:center;gap:13px;padding:12px 8px;font-size:12px;letter-spacing:.07em;box-shadow:none}.chapter-trail span{font:italic 15px Georgia;color:#aa8d60}.chapter-trail a+a{border-left:1px solid #d9cbdc}.chapter-trail a:hover{background:linear-gradient(110deg,#f0e7f6,#f8f2e4);box-shadow:0 3px 0 #d6c4df}
.selected-tags{list-style:none;margin:0 0 15px;padding:0;display:flex;flex-wrap:wrap;gap:7px}.selected-tags[hidden]{display:none}.selected-tags li{padding:5px 12px;border:1px solid #c6acd2;border-radius:20px 20px 20px 3px;background:linear-gradient(125deg,#fffdf7,#eadff1);font-size:10px;color:#624573;box-shadow:0 2px 0 #d6c7dd77;animation:tag-settle .3s ease-out both}
.advice-details{border-bottom:1px solid #cbbbd1;border-top:1px solid #cbbbd1;margin:20px 0 10px;background:linear-gradient(115deg,#fffdf64d,#f0e6f24d)}.advice-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding:13px 14px;font-size:12px;cursor:pointer;color:#634d71}.advice-details summary::-webkit-details-marker{display:none}.advice-details summary:after{content:'＋';font-size:19px;color:#8c6e9c}.advice-details[open] summary:after{content:'−'}.advice-details ol{list-style:none;counter-reset:advice;padding:0 14px 7px;margin:0}.advice-details li{counter-increment:advice;position:relative;padding:15px 0 15px 34px;border-top:1px solid #d6c7dc99}.advice-details li:before{content:counter(advice,decimal-leading-zero);position:absolute;left:0;top:16px;font:italic 13px Georgia;color:#a0875e}.advice-details li strong{font-size:12px;font-weight:500;color:#624573}.advice-details li p{font-size:12px;line-height:1.9;margin-top:6px;color:#74627d}.advice-details[open] ol{animation:answer-unfold .35s ease-out both}.selection-return{display:inline-block;font-size:11px;padding:9px 2px;color:#765b86;text-underline-offset:4px;text-decoration:underline}
.journey-tabs{gap:20px;margin-bottom:27px}.journey-tabs button{position:relative;flex-direction:column;align-items:center;justify-content:flex-start;padding:0 0 18px;gap:15px;overflow:hidden;font-size:19px;border-radius:3px 3px 24px 3px}.journey-tabs .tab-photo{width:100%;height:130px;object-fit:cover;opacity:.83;transition:transform .6s,opacity .4s;pointer-events:none}.journey-tabs button:hover .tab-photo,.journey-tabs button[aria-selected=true] .tab-photo{opacity:1;transform:scale(1.025)}.journey-tabs .tab-key{position:absolute;left:14px;top:12px;color:#fff;background:#50375ecc;border:1px solid #ead5f066;border-radius:50%;height:31px;width:31px;display:grid;place-items:center;font-size:12px;z-index:1}.journey-tabs button>span:last-child{position:absolute;right:20px;bottom:18px}.journey-tabs button[aria-selected=true]{box-shadow:0 5px 0 #37243e,0 12px 27px #51306222}.journey-heading>p{max-width:330px}
.service-fallback{display:grid;gap:20px;margin:20px 0;padding:25px;background:#fff8}.service-fallback h3{font-size:21px}.service-fallback p{font-size:13px;margin-top:10px}
.rep-promises{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid #d6c7dc}.rep-promises li{display:grid;grid-template-columns:27px 1fr;gap:13px;padding:16px 0;border-bottom:1px solid #d6c7dc}.rep-promises li>span{font:italic 13px/1.8 Georgia;color:#a38b63}.rep-promises strong{font-size:13px;font-weight:500;color:#685174}.rep-promises li p{font-size:11px;margin:3px 0 0!important;line-height:1.8;color:#806e89}.representative{align-items:start}.portrait{position:sticky;top:120px}.rep-text>p{line-height:2}
.journey-picture{background:radial-gradient(ellipse at 25% 30%,#a187b0,#493254 80%)}.journey-picture.image-unavailable img{opacity:0}.journey-picture.image-unavailable:before{content:'住まいの、次の一歩を。';position:absolute;left:8%;top:18%;right:8%;font:30px/1.8 var(--serif);color:#f7edff}.journey-picture.image-unavailable:after{background:linear-gradient(0deg,#2f1e40bb,transparent)}
.process{padding-top:75px;padding-bottom:75px}.process-photo{height:135px;margin-bottom:20px}.process-list p{max-width:320px}.hero .hero-copy{text-wrap:pretty}.hero h1 .line-mask{padding-bottom:.03em}.hero-stamp{background:linear-gradient(150deg,#4530522e,#edcf9822);box-shadow:inset 0 0 18px #ffe2ae11}.hero-stamp:before{content:'';position:absolute;inset:5px;border:1px solid #e2c59333;pointer-events:none}.contact-inner h2{max-width:740px}.phone{white-space:nowrap}
@keyframes tag-settle{from{opacity:.35;transform:translateY(6px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:1100px) and (min-width:761px){.journey-tabs .tab-photo{height:110px}.journey-tabs button{font-size:17px}.portrait{top:110px}.rep-promises strong{font-size:12px}}
@media(max-width:760px){.chapter-trail{gap:0;margin-top:17px;padding-bottom:15px}.chapter-trail a{flex-direction:column;gap:3px;padding:8px 3px;font-size:10px;letter-spacing:0;text-align:center;min-height:56px}.chapter-trail span{font-size:12px}.chapter-trail a+a{border-left:1px solid #d9cbdc}.journey-tabs{gap:8px;margin-bottom:22px}.journey-tabs button{font-size:12px;padding-bottom:13px;gap:10px;min-height:0;flex-wrap:nowrap;border-radius:3px 3px 15px 3px}.journey-tabs .tab-photo{height:80px}.journey-tabs .tab-key{left:7px;top:7px;width:23px;height:23px;font-size:9px}.journey-tabs button>span:last-child{display:none}.journey-heading{margin-bottom:25px}.journey-heading>p{max-width:none}.selected-tags{gap:6px;margin-bottom:13px}.selected-tags li{font-size:10px;padding:4px 9px}.advice-details summary{padding:12px 10px;font-size:11px;gap:12px}.advice-details ol{padding:0 10px 4px}.advice-details li{padding-left:28px}.advice-details li p{font-size:11px}.advice-details li strong{font-size:11px}.rep-promises{margin-top:24px}.rep-promises li{padding:13px 0}.rep-promises strong{font-size:12px}.rep-promises li p{font-size:10px}.portrait{position:relative;top:auto}.process{padding-top:55px;padding-bottom:55px}.process-photo{height:114px;margin:0}.process-list article{min-height:150px}.preparation-photo{aspect-ratio:5/3}.preparation-copy .section-title{font-size:clamp(28px,7.8vw,38px)}.consult-layout .advice-details{margin-top:20px}.consult-script .call-script{line-height:1.9}.journey-picture.image-unavailable:before{font-size:24px}.phone{font-size:clamp(27px,8.5vw,36px)}.consult-call .phone{font-size:clamp(25px,8vw,34px)}
}
@media(max-width:350px){.chapter-trail a{font-size:9px}.journey-tabs button{font-size:11px}.journey-tabs .tab-photo{height:67px}.consult-call{padding:26px 17px}.contact-action .phone{font-size:29px}.selected-tags li{font-size:9px}}
@media(prefers-reduced-motion:reduce){.selected-tags li,.advice-details[open] ol{animation:none}.journey-tabs button:hover .tab-photo,.journey-tabs button[aria-selected=true] .tab-photo{transform:none}}

.voice-path{display:flex;align-items:center;gap:8px;margin-top:19px;font-size:10px;line-height:1.7;color:#795a89}.voice-path span{padding:6px 9px;border:1px solid #d2bddd;border-radius:3px;background:linear-gradient(135deg,#fffaf1,#f0e5f5)}.voice-path span:last-child{background:linear-gradient(135deg,#876b97,#634b76);color:#fff;border-color:#80678e}.voice-path i{font-style:normal;color:#ac8c59;flex-shrink:0}@media(max-width:760px){.voice-path{margin-top:16px;font-size:10px;gap:9px}.voice-path span{padding:6px 10px}}
