:root{--paper:#fbfaf5;--white:#fff;--forest:#174d43;--deep:#153f36;--ink:#27382e;--muted:#617066;--sage:#e9eee5;--apricot:#edac82;--line:#d8dfd4;--font-scale:1;--ease:cubic-bezier(.22,1,.36,1);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Pretendard Variable","Noto Sans KR","Malgun Gothic",sans-serif;font-size:calc(18px * var(--font-scale));line-height:1.8;word-break:keep-all;overflow-wrap:break-word}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer}button:disabled{cursor:default}button{border:0;background:none}img{max-width:100%;display:block}svg{display:block}svg path{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke-width:1.7}button svg,a svg{width:1.25em;height:1.25em;flex:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b6754e;outline-offset:5px}p,h1,h2,h3{margin:0}p+p{margin-top:16px}h1,h2,h3{letter-spacing:-.055em;line-height:1.3;font-weight:650}h2{font-size:calc(clamp(2rem,3.2vw,3.1rem) * var(--font-scale))}h3{font-size:calc(24px * var(--font-scale))}p{letter-spacing:-.025em}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.section-pad{padding:104px 0}.eyebrow{font-size:calc(14px * var(--font-scale));font-weight:600;letter-spacing:.015em;color:var(--forest);margin-bottom:18px}.text-link,.quiet-link{display:inline-flex;align-items:center;gap:16px;font-size:calc(16px * var(--font-scale));font-weight:600;line-height:1.6;min-height:48px}.text-link span,.quiet-link span{transition:transform .25s}.text-link:hover span,.quiet-link:hover span{transform:translateX(5px)}.sr-only,.skip:not(:focus){position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip:focus{position:fixed;left:20px;top:12px;padding:12px;background:var(--forest);color:white;z-index:999}.site-header{position:sticky;top:0;background:rgba(251,250,245,.96);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);z-index:100}.header-inner{max-width:1540px;padding:18px 40px;margin:auto;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;flex:none;line-height:1.1;font-weight:750;color:var(--forest);font-size:calc(20px * var(--font-scale));letter-spacing:-.06em}.brand img{width:42px;height:42px}.brand-sub{display:block;font-size:.64em;letter-spacing:.09em;margin-top:7px;font-weight:550}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1;line-height:1.5;font-size:calc(14px * var(--font-scale));white-space:nowrap;font-weight:550}.desktop-nav a,.nav-drop>button{display:flex;align-items:center;gap:5px;min-height:48px;transition:transform .22s}.desktop-nav a:hover,.nav-drop>button:hover{transform:translateY(-2px)}.nav-drop{position:relative}.nav-drop>button{padding:0;font-size:inherit}.nav-drop svg{width:14px;height:14px}.subnav{position:absolute;left:-24px;top:calc(100% + 7px);background:var(--white);padding:12px 24px;min-width:170px;border-radius:12px;box-shadow:0 16px 40px #173d3319;border:1px solid var(--line)}.subnav:before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}.subnav[hidden]{display:none}.subnav a{min-height:48px}.header-actions{display:flex;align-items:center;gap:24px}.header-call{line-height:1.4;display:block;color:var(--forest)}.header-call span{display:block;font-size:calc(11px * var(--font-scale));font-weight:600;letter-spacing:.03em}.header-call strong{font-size:calc(17px * var(--font-scale));letter-spacing:-.03em;display:block}.reading-toggle{font-size:calc(18px * var(--font-scale));min-width:44px;min-height:44px;padding:0;white-space:nowrap}.reading-toggle span{font-size:.65em;margin-left:3px}.menu-toggle{display:none;align-items:center;gap:9px;padding:0;min-height:48px;font-size:calc(15px * var(--font-scale))}.menu-icon{display:block;width:23px;height:14px;border-block:1.7px solid currentColor;position:relative}.menu-icon:after{content:"";position:absolute;top:5px;left:6px;width:17px;border-top:1.7px solid currentColor}.mobile-menu{position:fixed;inset:0;z-index:200;background:var(--paper);padding:24px max(24px,calc((100vw - 680px)/2));overflow-y:auto}.mobile-menu[hidden]{display:none}.menu-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;color:var(--forest);font-size:calc(14px * var(--font-scale));margin-bottom:18px}.menu-close{display:flex;gap:18px;align-items:center;min-height:48px}.menu-close span{font-size:30px}.mobile-menu>a{display:block;font-size:calc(23px * var(--font-scale));padding:10px 0;line-height:1.5}.mobile-sub{display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);padding:4px 0 18px;font-size:calc(16px * var(--font-scale))}.mobile-sub a{min-height:44px;display:flex;align-items:center}.mobile-menu .mobile-menu-call{border-top:1px solid var(--line);margin-top:18px;padding-top:24px;font-size:calc(15px * var(--font-scale))}.mobile-menu-call strong{display:block;font-size:calc(25px * var(--font-scale))}body.menu-open{overflow:hidden}
.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:32px;width:min(1390px,calc(100% - 96px));margin:0 auto;min-height:720px;align-items:center;padding:48px 0 64px}.hero-copy{position:relative;z-index:2;padding:14px 0 30px 30px}.hero-copy .eyebrow{margin-bottom:28px;color:#657c6a}.hero h1{font-size:calc(clamp(48px,4.4vw,66px) * var(--font-scale));letter-spacing:-.065em;line-height:1.22;color:var(--forest)}.hero-word{position:relative;display:inline-block;margin-top:7px}.hero-word>svg{position:absolute;bottom:-10px;left:1%;width:98%;height:16px;overflow:visible;color:#c78963}.hero-word path{stroke-width:1.4;stroke-dasharray:360;stroke-dashoffset:360;animation:draw-line 1.4s .65s var(--ease) forwards}.hero-description{margin-top:34px;color:var(--muted);line-height:1.8;font-size:calc(19px * var(--font-scale))}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:58px;padding:13px 22px;font-weight:600;font-size:calc(16px * var(--font-scale));line-height:1.55;transition:background .25s,transform .25s}.button-forest{color:white;background:var(--forest);border-radius:3px}.button-forest:hover{background:#236451;transform:translateY(-2px)}.hero .quiet-link{font-size:calc(14px * var(--font-scale))}.hero-experience{margin-top:12px;font-size:calc(16px * var(--font-scale));line-height:1.8;color:var(--muted)}.hero-visual{position:relative;padding:10px 12px 0}.hero-photo{aspect-ratio:.99;height:min(62vh,650px);min-height:560px;position:relative;clip-path:inset(0 14% 0 14% round 220px 220px 14px 14px);transition:clip-path 1.8s var(--ease);isolation:isolate}.hero-photo picture{height:100%;display:block;overflow:hidden;border-radius:4px}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center 49%;transform:scale(1.12);transition:transform 3.2s var(--ease)}.hero.photo-open .hero-photo{clip-path:inset(0 0 0 0 round 5px)}.hero.photo-open .hero-photo img{transform:scale(1)}.hero.photo-open .hero-note{opacity:1;transform:translateY(0)}.photo-replay{position:absolute;right:16px;top:16px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fbfaf5df;color:var(--forest);opacity:0;transition:opacity .4s}.hero.photo-open .photo-replay,.photo-replay:focus-visible{opacity:1}.photo-replay svg{width:20px;height:20px}.hero-note{display:flex;justify-content:space-between;gap:10px;font-size:calc(11px * var(--font-scale));color:var(--muted);padding-top:14px;opacity:0;transform:translateY(6px);transition:opacity 1s 1s,transform 1s 1s}.entrance{animation:entrance .9s var(--ease) both}.hero h1{animation-delay:.12s}.hero-description{animation-delay:.28s}.hero-experience{animation-delay:.55s}.hero-copy .eyebrow{animation-delay:0s}
.trust-section{padding:44px 0;background:var(--sage);border-block:1px solid #d8dfd1}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.trust-grid>div{border-right:1px solid #cad5c4;padding:0 18px;text-align:center}.trust-grid>div:last-child{border:0}.trust-grid span{display:block;color:var(--muted);font-size:calc(13px * var(--font-scale))}.trust-grid strong{display:block;color:var(--forest);line-height:1.3;margin:10px 0;font-weight:500;letter-spacing:-.05em}.trust-grid b{font-size:calc(45px * var(--font-scale));font-weight:550;font-variant-numeric:tabular-nums}.trust-grid small{font-size:calc(22px * var(--font-scale));margin-left:5px;font-weight:500}.trust-grid p{font-size:calc(12px * var(--font-scale));color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:46px}.section-intro{font-size:calc(16px * var(--font-scale));line-height:1.85;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service{display:block}.service:nth-child(2){transition-delay:.12s}.service:nth-child(3){transition-delay:.24s}.service-image{aspect-ratio:1.15;position:relative;overflow:hidden;border-radius:5px;background:var(--sage)}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.service:hover .service-image img{transform:scale(1.04)}.image-index{position:absolute;top:14px;left:15px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fbfaf5eb;font-size:12px;line-height:1;letter-spacing:.06em}.service-copy{padding:24px 6px 14px}.service-copy .eyebrow{margin-bottom:7px;font-size:calc(13px * var(--font-scale));color:var(--muted)}.service-copy h3{font-size:calc(31px * var(--font-scale));color:var(--forest);letter-spacing:-.05em}.service-copy>p:not(.eyebrow){color:var(--muted);font-size:calc(16px * var(--font-scale));line-height:1.8;margin-top:13px}.detail-link{position:relative;display:inline-flex;align-items:center;gap:14px;min-height:48px;font-size:calc(14px * var(--font-scale));margin-top:18px;font-weight:650;transition:transform .25s}.detail-link:after{content:"";position:absolute;left:0;right:30px;bottom:6px;height:1px;background:#b9835e;transform:scaleX(0);transform-origin:left;transition:transform .3s}.service:hover .detail-link{transform:translateY(-3px)}.service:hover .detail-link:after{transform:scaleX(1)}.quick-guide{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;padding:32px 24px;background:#eeefe9;border-radius:5px}.quick-guide>a{display:grid;grid-template-columns:1fr auto;padding:4px 24px;border-right:1px solid #d2dacd;gap:3px 12px;align-items:center}.quick-guide>a:last-child{border:0}.quick-guide span{font-size:calc(12px * var(--font-scale));color:var(--muted)}.quick-guide strong{font-size:calc(18px * var(--font-scale));letter-spacing:-.04em;font-weight:650;transition:transform .2s}.quick-guide svg{grid-column:2;grid-row:1/3;width:21px;height:21px}.quick-guide a:hover strong{transform:translateY(-2px)}.ai-note{display:flex;align-items:center;gap:18px;padding:27px 32px;background:#f5e9dc;border-radius:5px;margin-top:18px}.ai-dot{width:13px;height:13px;background:#c08965;border-radius:50%;box-shadow:0 0 0 7px #c0896516;flex:none}.ai-note p{font-size:calc(12px * var(--font-scale));color:var(--muted)}.ai-note strong{font-size:calc(18px * var(--font-scale));font-weight:600;display:block;line-height:1.6}.ai-cta{margin-left:auto;display:flex;align-items:center;gap:16px;font-size:calc(13px * var(--font-scale));font-weight:600}.ai-note:hover .ai-cta{transform:translateY(-2px)}
.process{color:#f8f8ec;background:var(--deep);overflow:hidden}.process-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:96px}.process .eyebrow{color:#b8ccae}.process-intro{position:relative}.process-intro>p:not(.eyebrow){font-size:calc(16px * var(--font-scale));line-height:1.9;margin-top:26px;color:#d5dece}.process-intro>.text-link{margin-top:28px;font-size:calc(14px * var(--font-scale));border-bottom:1px solid #72927a}.process-list article{display:grid;grid-template-columns:40px 1fr;gap:20px;padding:24px 0;border-top:1px solid #5b7566}.process-list article:first-child{padding-top:8px;border:0}.step-number{font-size:calc(14px * var(--font-scale));line-height:1.9;color:#c2cfa9;font-variant-numeric:tabular-nums}.process-list h3{font-size:calc(22px * var(--font-scale));font-weight:550;line-height:1.5;letter-spacing:-.04em}.process-list p{font-size:calc(15px * var(--font-scale));color:#c6d5c5;line-height:1.9;margin-top:10px}.cases-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.cases-grid>div>p:not(.eyebrow){margin-top:24px;font-size:calc(16px * var(--font-scale));color:var(--muted);line-height:1.9}.case-window{border-top:1px solid #b9c6b3}.matching-status-list{padding:0;margin:0;list-style:none}.matching-status-item{padding:27px 14px 30px 0;min-height:300px}.matching-status-item[hidden]{display:none}.matching-status-district{display:block;font-size:calc(14px * var(--font-scale));color:var(--muted)}.matching-status-district>span:first-child,.matching-status-district>time{display:block}.matching-status-location{display:block;font-size:calc(27px * var(--font-scale));line-height:1.45;letter-spacing:-.05em;color:var(--forest);font-weight:650;margin-top:10px}.matching-case-progress{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.matching-case-progress span{font-size:calc(12px * var(--font-scale));background:#e9eee5;color:var(--forest);padding:4px 12px;border-radius:30px;font-weight:600}.matching-case-progress i{font-style:normal;margin-right:5px}.matching-status-dates{font-size:calc(19px * var(--font-scale));color:var(--forest);line-height:1.8;margin-top:22px}.matching-status-outcome{font-size:calc(14px * var(--font-scale));color:var(--muted);margin-top:10px}.case-controls{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0}.case-controls>div{display:flex;gap:8px}.case-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #cbd5c5;border-radius:50%;font-size:20px;background:#ffffff50}.case-controls button:hover{background:var(--sage)}.case-controls svg{width:18px;height:18px}.case-counter{font-size:calc(13px * var(--font-scale));font-variant-numeric:tabular-nums;color:var(--muted)}.cases-grid .cases-body .case-note{font-size:calc(12px * var(--font-scale));margin-top:10px;line-height:1.8;color:var(--muted)}.faq{background:#edf0e8}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-grid>.text-link,.faq-grid>div>.text-link{margin-top:28px;font-size:calc(14px * var(--font-scale))}.faq-list details{border-bottom:1px solid #cad5c3;padding:0}.faq-list details:first-child{border-top:1px solid #cad5c3}.faq-list summary{list-style:none;position:relative;cursor:pointer;padding:23px 42px 23px 0;line-height:1.65;font-size:calc(18px * var(--font-scale));font-weight:550;letter-spacing:-.035em}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"＋";font-size:24px;font-weight:300;position:absolute;right:4px;top:21px;color:var(--forest);line-height:1.4}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{font-size:calc(16px * var(--font-scale));line-height:1.9;padding:0 36px 24px 0;color:#4f6255}.faq-list details>a{display:inline-block;padding:0 0 22px;color:var(--forest);font-size:calc(15px * var(--font-scale));text-decoration:underline;text-underline-offset:5px}.note-search{display:flex;align-items:center;border-bottom:1px solid #91a38d;padding:8px 0;min-width:280px;max-width:100%;gap:8px}.note-search input{background:none;border:0;min-width:0;width:100%;padding:9px 0;font-size:calc(16px * var(--font-scale));outline-offset:3px}.note-search button{width:48px;height:48px;display:grid;place-items:center;flex:none;color:var(--forest)}.note-search svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.note-grid>a{display:flex;flex-direction:column;padding:28px 0 20px;border-top:1px solid #abbba2;position:relative;min-width:0}.note-number{position:absolute;top:25px;right:8px;font-size:calc(12px * var(--font-scale));color:#768b70}.note-grid .eyebrow{font-size:calc(12px * var(--font-scale));color:var(--muted);margin:0 0 18px}.note-grid h3{font-size:calc(21px * var(--font-scale));line-height:1.6;font-weight:550}.note-grid .text-link{margin-top:23px;font-size:calc(13px * var(--font-scale))}.note-grid>a:hover h3{transform:translateY(-3px);transition:transform .25s}.all-notes{margin-top:26px;font-size:calc(14px * var(--font-scale));color:var(--muted)}.jobs{padding:48px 0;border-top:1px solid var(--line)}.jobs>.wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.jobs h2{font-size:calc(24px * var(--font-scale));line-height:1.6}.jobs .eyebrow{font-size:calc(12px * var(--font-scale));margin-bottom:10px}.jobs .text-link{font-size:calc(14px * var(--font-scale))}.contact{position:relative;background:#f3e8d9;text-align:center;overflow:hidden}.contact-inner{position:relative;max-width:800px}.contact h2{font-size:calc(clamp(35px,3.5vw,50px) * var(--font-scale));color:var(--forest);line-height:1.35}.contact-inner>div>p:not(.eyebrow){font-size:calc(16px * var(--font-scale));line-height:1.9;margin-top:28px;color:#617064}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:34px auto 0;max-width:640px;text-align:left}.contact-actions>a{position:relative;padding:21px 25px;border:1px solid #d9c2a9;border-radius:6px;line-height:1.6;min-height:100px}.contact-call{background:#e8bb95}.contact-chat{background:#e0e7d8}.contact-actions span{font-size:calc(13px * var(--font-scale));display:block}.contact-actions strong{display:block;font-size:calc(22px * var(--font-scale));font-weight:650;letter-spacing:-.045em}.contact-actions svg{position:absolute;right:20px;top:50%;width:20px;height:20px;transform:translateY(-50%)}.contact-actions a:hover strong{transform:translateY(-2px);transition:transform .25s}.contact-hours{font-size:calc(13px * var(--font-scale));color:var(--muted);margin-top:24px;line-height:1.9}.contact-region{font-size:calc(13px * var(--font-scale));color:var(--muted);margin-top:18px}.contact .text-link{margin-top:16px;font-size:calc(14px * var(--font-scale))}.site-footer{padding:56px 0 28px;background:#f8f7f1}.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.1fr;gap:50px}.footer-grid p{font-size:calc(12px * var(--font-scale));color:var(--muted);line-height:1.9;margin-top:16px}.footer-grid .footer-motto{font-size:calc(15px * var(--font-scale));color:var(--forest);margin:22px 0}.footer-grid h3{font-size:calc(14px * var(--font-scale));letter-spacing:-.025em;line-height:1.6;margin:6px 0 16px}.footer-grid>div>a:not(.brand){display:block;min-height:36px;font-size:calc(12px * var(--font-scale));color:var(--muted)}.footer-grid a:hover{transform:translateY(-2px);transition:transform .2s}.footer-bottom{display:flex;align-items:center;gap:26px;justify-content:space-between;margin-top:42px;padding-top:22px;border-top:1px solid var(--line);font-size:calc(10px * var(--font-scale));color:var(--muted)}.footer-bottom>div{display:flex;gap:18px}.motion-toggle{padding:8px 0;font-size:inherit}.mobile-contact-bar{display:none}.js [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}.case-enter{animation:case-in .5s var(--ease)}
@keyframes entrance{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes draw-line{to{stroke-dashoffset:0}}@keyframes case-in{from{opacity:.35;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(min-width:1350px){.hero{gap:50px}.hero-photo{width:100%}.hero-visual{padding-right:24px}}
@media(max-width:1340px){.desktop-nav{gap:16px;font-size:calc(13px * var(--font-scale))}.header-inner{gap:20px;padding-inline:28px}.header-actions{gap:14px}.brand{font-size:calc(18px * var(--font-scale))}.header-call strong{font-size:calc(15px * var(--font-scale))}.hero-copy{padding-left:5px}.hero-photo{min-height:510px}.hero{min-height:650px}}
@media(max-width:1160px){.desktop-nav,.header-call{display:none}.header-actions{margin-left:auto;gap:23px}.menu-toggle{display:flex}.header-inner{padding:14px 30px}.wrap{width:calc(100% - 64px)}.hero{width:calc(100% - 64px);gap:20px;min-height:610px;padding-block:34px 54px}.hero h1{font-size:calc(48px * var(--font-scale))}.hero-photo{min-height:475px;height:auto}.hero-description{font-size:calc(17px * var(--font-scale))}.hero-experience{font-size:calc(15px * var(--font-scale));margin-top:12px}.hero-note{font-size:calc(9px * var(--font-scale))}.process-grid,.cases-grid,.faq-grid{gap:50px}.quick-guide{padding:24px 12px}.quick-guide>a{padding:4px 15px}.quick-guide strong{font-size:calc(16px * var(--font-scale))}.service-grid{gap:22px}.service-copy{padding-inline:0}.trust-grid{gap:16px}.trust-grid>div{padding-inline:6px}.trust-grid b{font-size:calc(38px * var(--font-scale))}.footer-grid{gap:30px}}
@media(max-width:767px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}.section-pad{padding:64px 0}.header-inner{padding:11px 20px;gap:12px}.brand{font-size:calc(16px * var(--font-scale));gap:7px}.brand img{width:36px;height:36px}.brand-sub{font-size:.64em;letter-spacing:.06em;margin-top:6px}.header-actions{gap:15px}.reading-toggle{min-width:32px;font-size:calc(17px * var(--font-scale))}.menu-toggle{font-size:calc(12px * var(--font-scale));gap:7px}.menu-icon{width:19px;height:13px}.menu-icon:after{width:14px;top:4px}.hero{display:flex;flex-direction:column;gap:24px;width:100%;padding:35px 20px 33px;min-height:0}.hero-copy{width:100%;padding:0 4px}.hero-copy .eyebrow{margin-bottom:20px;font-size:calc(12px * var(--font-scale))}.hero h1{font-size:calc(clamp(37px,10.7vw,48px) * var(--font-scale));line-height:1.23;letter-spacing:-.065em}.hero-word{margin-top:4px}.hero-word>svg{height:10px;bottom:-8px}.hero-description{font-size:calc(16px * var(--font-scale));margin-top:24px;line-height:1.85}.hero .quiet-link{font-size:calc(12px * var(--font-scale));min-height:44px;gap:10px}.hero-experience{font-size:calc(14px * var(--font-scale));margin-top:12px;line-height:1.85}.hero-visual{width:100%;padding:0;max-width:500px;margin-top:1px}.hero-photo{width:100%;height:auto;min-height:0;aspect-ratio:1.04;clip-path:inset(0 11% 0 11% round 130px 130px 6px 6px)}.hero-photo img{object-position:center 42%}.hero.photo-open .hero-photo{clip-path:inset(0 0 0 0 round 4px)}.photo-replay{top:12px;right:12px;width:40px;height:40px}.hero-note{padding-top:12px;font-size:calc(9px * var(--font-scale));line-height:1.6}.trust-section{padding:27px 0}.trust-grid{grid-template-columns:repeat(2,1fr);gap:24px 12px}.trust-grid>div{border:0;padding:0 6px}.trust-grid>div:nth-child(odd){border-right:1px solid #cbd6c4}.trust-grid span{font-size:calc(11px * var(--font-scale))}.trust-grid b{font-size:calc(34px * var(--font-scale))}.trust-grid small{font-size:calc(17px * var(--font-scale));margin-left:3px}.trust-grid strong{margin:7px 0}.trust-grid p{font-size:calc(10px * var(--font-scale))}h2{font-size:calc(30px * var(--font-scale));line-height:1.4;letter-spacing:-.055em}.eyebrow{font-size:calc(12px * var(--font-scale));margin-bottom:14px}.section-heading{display:block;margin-bottom:30px}.section-intro{font-size:calc(14px * var(--font-scale));margin-top:18px}.service-grid{grid-template-columns:1fr;gap:38px}.service:nth-child(n){transition-delay:0s}.service-image{aspect-ratio:1.25}.service-image img{object-position:center 43%}.image-index{width:36px;height:36px;top:12px;left:12px;font-size:10px}.service-copy{padding:20px 4px 0}.service-copy .eyebrow{font-size:calc(12px * var(--font-scale))}.service-copy h3{font-size:calc(29px * var(--font-scale))}.service-copy>p:not(.eyebrow){font-size:calc(17px * var(--font-scale));margin-top:10px}.detail-link{font-size:calc(13px * var(--font-scale));margin-top:12px}.quick-guide{grid-template-columns:1fr;margin-top:35px;padding:7px 22px}.quick-guide>a{padding:22px 0;border-right:0;border-bottom:1px solid #d2dacd;gap:6px 20px}.quick-guide span{font-size:calc(12px * var(--font-scale))}.quick-guide strong{font-size:calc(18px * var(--font-scale))}.ai-note{padding:24px 19px;gap:14px;align-items:flex-start;flex-wrap:wrap}.ai-note .ai-dot{width:9px;height:9px;box-shadow:0 0 0 5px #c0896516;margin-top:7px}.ai-note>div{flex:1}.ai-note p{font-size:calc(10px * var(--font-scale));line-height:1.8}.ai-note strong{font-size:calc(17px * var(--font-scale));line-height:1.6;margin-top:4px}.ai-cta{width:100%;margin:0 0 0 23px;font-size:calc(12px * var(--font-scale));gap:20px}.process-grid,.cases-grid,.faq-grid{grid-template-columns:1fr;gap:34px}.process-intro>p:not(.eyebrow){font-size:calc(14px * var(--font-scale));line-height:1.9;margin-top:22px}.process-intro>.text-link{margin-top:16px;font-size:calc(12px * var(--font-scale))}.process-list article{gap:16px;grid-template-columns:27px 1fr;padding:22px 0}.process-list article:first-child{padding-top:0}.step-number{font-size:calc(12px * var(--font-scale))}.process-list h3{font-size:calc(18px * var(--font-scale));line-height:1.6}.process-list p{font-size:calc(15px * var(--font-scale));line-height:1.9;margin-top:9px}.process-list br{display:none}.cases-grid{gap:25px}.cases-grid h2 br{display:none}.cases-grid>div>p:not(.eyebrow){font-size:calc(14px * var(--font-scale));margin-top:18px}.matching-status-item{padding-top:23px;min-height:315px}.matching-status-district{font-size:calc(12px * var(--font-scale))}.matching-status-location{font-size:calc(23px * var(--font-scale));line-height:1.55;margin-top:10px}.matching-case-progress{gap:6px;margin-top:15px}.matching-case-progress span{font-size:calc(10px * var(--font-scale));padding:4px 10px}.matching-status-dates{font-size:calc(17px * var(--font-scale));line-height:1.8;margin-top:20px}.matching-status-outcome{font-size:calc(12px * var(--font-scale));line-height:1.9}.case-controls{padding:12px 0}.case-counter{font-size:calc(12px * var(--font-scale))}.cases-grid .cases-body .case-note{font-size:calc(10px * var(--font-scale));line-height:1.9}.faq-grid{gap:25px}.faq h2 br{display:none}.faq-grid>div>.text-link{margin-top:15px;font-size:calc(12px * var(--font-scale))}.faq-list summary{font-size:calc(17px * var(--font-scale));padding:20px 35px 20px 0;line-height:1.7}.faq-list summary:after{font-size:22px;top:20px}.faq-list details>p{font-size:calc(17px * var(--font-scale));padding-right:9px}.faq-list details>a{font-size:calc(13px * var(--font-scale))}.note-search{min-width:0;width:100%;margin-top:24px}.note-search input{font-size:calc(15px * var(--font-scale));padding-left:4px}.note-grid{grid-template-columns:1fr;gap:14px}.note-grid>a{padding:23px 4px 12px}.note-number{top:24px;font-size:calc(11px * var(--font-scale))}.note-grid .eyebrow{font-size:calc(11px * var(--font-scale));margin-bottom:11px}.note-grid h3{font-size:calc(20px * var(--font-scale));line-height:1.6}.note-grid .text-link{font-size:calc(12px * var(--font-scale));margin-top:10px}.all-notes{font-size:calc(12px * var(--font-scale));margin-top:12px}.jobs{padding:35px 0}.jobs>.wrap{display:block}.jobs h2{font-size:calc(23px * var(--font-scale));line-height:1.6}.jobs .eyebrow{font-size:calc(11px * var(--font-scale))}.jobs .text-link{font-size:calc(12px * var(--font-scale));margin-top:16px}.contact{padding:64px 0 53px}.contact h2{font-size:calc(31px * var(--font-scale));line-height:1.45}.contact-inner>div>p:not(.eyebrow){font-size:calc(16px * var(--font-scale));line-height:1.9;margin-top:23px}.contact-inner>div>p>br{display:none}.contact-actions{gap:10px;margin-top:26px}.contact-actions>a{padding:17px 13px;min-height:90px}.contact-actions span{font-size:calc(11px * var(--font-scale))}.contact-actions strong{font-size:calc(15px * var(--font-scale));line-height:1.8;letter-spacing:-.045em}.contact-actions svg{display:none}.contact-hours{font-size:calc(11px * var(--font-scale));line-height:2;margin-top:21px}.contact-region{font-size:calc(11px * var(--font-scale));margin-top:15px}.contact .text-link{font-size:calc(12px * var(--font-scale));margin-top:10px}.site-footer{padding:36px 0 88px}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 22px}.footer-grid>div:first-child{grid-column:1/-1;margin-bottom:4px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid h3{font-size:calc(13px * var(--font-scale));margin-bottom:12px}.footer-grid>div>a:not(.brand){font-size:calc(11px * var(--font-scale));min-height:35px}.footer-grid p{font-size:calc(11px * var(--font-scale))}.footer-grid .footer-motto{font-size:calc(14px * var(--font-scale));margin:18px 0 12px}.footer-bottom{margin-top:28px;padding-top:18px;flex-wrap:wrap;font-size:calc(10px * var(--font-scale));gap:10px 22px}.footer-bottom>div{gap:16px}.motion-toggle{min-height:44px}.mobile-contact-bar:not([hidden]){position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:90;background:var(--paper);padding:8px 12px max(8px,env(safe-area-inset-bottom));gap:8px;box-shadow:0 -4px 25px #143d3312;animation:bar-up .4s var(--ease)}.mobile-contact-bar>a{display:flex;gap:9px;align-items:center;justify-content:center;padding:11px 8px;background:#edc4a4;border-radius:6px;font-size:calc(13px * var(--font-scale));font-weight:650;min-height:48px;line-height:1.5}.mobile-contact-bar>a:last-child{background:#e0e8d8}.mobile-contact-bar svg{width:18px;height:18px}.only-desktop{display:none}.js [data-reveal]{transform:translateY(18px)}@keyframes bar-up{from{transform:translateY(100%)}to{transform:translateY(0)}}}
@media(max-width:370px){.header-inner{padding-inline:16px}.brand{font-size:calc(14px * var(--font-scale))}.brand img{width:32px;height:32px}.header-actions{gap:11px}.menu-toggle>span:last-child{display:none}.hero{padding-inline:18px}.hero .quiet-link{font-size:calc(11px * var(--font-scale))}.hero-note{font-size:calc(8px * var(--font-scale))}.contact-actions strong{font-size:calc(14px * var(--font-scale))}.trust-grid span{font-size:calc(10px * var(--font-scale))}}
html.large-type{--font-scale:1.25}html.large-type .desktop-nav{display:none}html.large-type .menu-toggle{display:flex}html.large-type .header-actions{margin-left:auto}html.large-type .hero h1{font-size:calc(clamp(40px,4.1vw,60px) * var(--font-scale))}html.large-type .quick-guide strong{font-size:calc(16px * var(--font-scale))}html.large-type .matching-status-item{min-height:360px}@media(max-width:767px){html.large-type .hero h1{font-size:calc(36px * var(--font-scale))}html.large-type .hero-note{flex-direction:column;gap:2px}html.large-type .contact-actions strong{font-size:calc(14px * var(--font-scale))}html.large-type .trust-grid p{font-size:calc(10px * var(--font-scale))}html.large-type .header-actions{gap:10px}html.large-type .brand{font-size:calc(14px * var(--font-scale))}html.large-type .menu-toggle>span:last-child{display:none}html.large-type .matching-status-item{min-height:385px}html.large-type .ai-note>div{min-width:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-word path{stroke-dashoffset:0}.hero-photo{clip-path:none}.hero-photo img{transform:none}.hero-note{opacity:1;transform:none}.js [data-reveal]{opacity:1;transform:none}}html.reduce-motion{scroll-behavior:auto}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important}html.reduce-motion .hero-word path{stroke-dashoffset:0}html.reduce-motion .hero-photo{clip-path:none}html.reduce-motion .hero-photo img{transform:none}html.reduce-motion .hero-note,html.reduce-motion.js [data-reveal]{opacity:1;transform:none}@media print{.site-header,.mobile-contact-bar,.photo-replay,.motion-toggle{display:none!important}*{animation:none!important;transition:none!important}.hero-photo{clip-path:none}.hero-photo img{transform:none}.js [data-reveal],.hero-note{opacity:1;transform:none}.matching-status-item[hidden]{display:block}.hero{min-height:0}.section-pad{padding-block:35px}}

/* Photographic flowers: subtle breeze, paused outside the viewport. */
.floral-spray{display:block;pointer-events:none;user-select:none;transform-origin:50% 95%;--floral-tilt:0deg;animation:floral-breeze 9s ease-in-out infinite;animation-play-state:paused}
.floral-spray.is-in-view{animation-play-state:running}
.floral-spray img{width:100%;height:auto;display:block}
@keyframes floral-breeze{0%,100%{transform:translate3d(0,0,0) rotate(calc(var(--floral-tilt) - 1.5deg))}50%{transform:translate3d(3px,-4px,0) rotate(calc(var(--floral-tilt) + 1.5deg))}}
@media(max-width:1160px){}
@media(max-width:767px){}
@media(prefers-reduced-motion:reduce){.floral-spray{animation:none;transform:rotate(var(--floral-tilt))}}
html.reduce-motion .floral-spray{animation:none;transform:rotate(var(--floral-tilt))}

/* The photograph corner and the process title each hold one flower spray. */
.floral-hero{position:absolute;width:160px;left:-108px;bottom:54px;z-index:3;--floral-tilt:-12deg;animation-duration:10s}
.process-title-lead{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.floral-process{position:relative;flex:none;width:88px;height:0;margin:0;--floral-tilt:12deg;animation-delay:-3s;animation-duration:12s}
.floral-process img{position:absolute;left:0;top:0;transform:translateY(-35%)}
@media(max-width:1160px){.floral-hero{width:130px;left:-78px;bottom:48px}.floral-process{width:68px}}
@media(max-width:767px){.hero{overflow-x:clip}.hero-visual{width:calc(100% - 16px);margin-inline:auto}.floral-hero{width:88px;left:auto;right:-27px;bottom:47px;--floral-tilt:9deg}.process-intro h2{font-size:calc(clamp(26px,8vw,30px) * var(--font-scale))}.process-title-lead{gap:8px}.floral-process{width:52px;--floral-tilt:8deg}.floral-process img{transform:translateY(-35%)}html.large-type .process-title-lead{gap:6px}html.large-type .floral-process{width:26px}}
@media(max-width:350px){.process-title-lead{gap:6px}.floral-process{width:40px}html.large-type .floral-process{width:20px}}

.hero-photo img{object-position:center 40%}@media(max-width:767px){.hero-photo{aspect-ratio:.9}.hero-photo img{object-position:center 40%}}

/* Spring boardwalk video preview. */
.hero-visual{width:min(100%,390px);justify-self:center;margin-inline:auto}
.hero-photo{width:100%;height:auto;min-height:0;aspect-ratio:9/16}
.hero-photo picture{height:100%}
.hero-photo img{object-position:center;transform:scale(1.06)}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;pointer-events:none;transform:scale(1.06);transition:transform 3.2s var(--ease),opacity .3s}
.hero.photo-open .hero-video{transform:scale(1)}
.hero.video-active .hero-video{opacity:1}
.video-toggle{position:absolute;left:14px;bottom:14px;z-index:2;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fbfaf5e8;color:var(--forest);opacity:0;transition:opacity .3s}
.video-toggle[hidden]{display:none}.hero.photo-open .video-toggle{opacity:1}.video-toggle svg{width:21px;height:21px}
.photo-replay{z-index:2}
html.reduce-motion .hero-video,html.reduce-motion .video-toggle{display:none}
@media(min-width:768px){.hero-visual{width:min(100%,calc(70vh * 9 / 16),390px)}}
@media(max-width:767px){.hero-visual{width:calc(100% - 16px);max-width:390px}.hero-photo{aspect-ratio:9/16;height:auto;min-height:0}.hero-photo img{object-position:center}}
@media(prefers-reduced-motion:reduce){.hero-video,.video-toggle{display:none}}

/* Desktop title-side flower, leaning northeast. */
.hero h1{position:relative}
.hero-title-flower{position:absolute;width:88px;left:5.2em;top:.4em;z-index:3;--floral-tilt:24deg;animation-duration:12s}
@media(min-width:768px){.floral-hero{display:none}}
@media(min-width:768px) and (max-width:1160px){.hero-title-flower{width:72px;left:5.1em;top:.3em}}
@media(max-width:767px){.hero-title-flower{display:none}}

/* Staff introduction over the lower wooden deck. */
.hero-caption{position:absolute;inset:auto 0 0;z-index:1;margin:0;padding:72px 16px 25px;color:#fff;text-align:center;font-size:calc(17px * var(--font-scale));font-weight:550;line-height:1.65;letter-spacing:-.025em;text-shadow:0 2px 8px #0007;background:linear-gradient(0deg,#14251bd9 0%,#14251b66 60%,#14251b00 100%);opacity:0;pointer-events:none;transition:opacity .5s}
.hero-caption span{display:block;opacity:0;transform:translateY(10px)}
.hero-caption span:last-child{font-size:.9em;margin-top:2px;line-height:1.7}
.hero.video-active .hero-caption{opacity:1}
.hero.video-active .hero-caption span{animation:hero-caption-line .9s var(--ease) both}
.hero.video-active .hero-caption span:nth-child(1){animation-delay:.3s}
.hero.video-active .hero-caption span:nth-child(2){animation-delay:1.2s}
.hero.video-active .hero-caption span:nth-child(3){animation-delay:2.1s}
.video-toggle{top:14px;bottom:auto}
@keyframes hero-caption-line{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
html.reduce-motion .hero-caption,html.reduce-motion .hero-caption span{opacity:1;transform:none;animation:none}
@media(prefers-reduced-motion:reduce){.hero-caption,.hero-caption span{opacity:1;transform:none;animation:none}}

/* Desktop balance: larger portrait video and a closer, larger headline. */
@media(min-width:1100px){
 .hero{width:min(1240px,calc(100% - 96px));grid-template-columns:minmax(0,1fr) minmax(390px,490px);gap:40px;padding:44px 0 64px;min-height:0}
 .hero-copy{padding:0;align-self:center}
 .hero h1{font-size:calc(clamp(74px,6.5vw,94px) * var(--font-scale));line-height:1.25}
 .hero-description{font-size:calc(22px * var(--font-scale));margin-top:34px}
 .hero-visual{width:100%;max-width:490px;padding:0;margin:0;justify-self:end}
 .hero-title-flower{width:78px;left:5.05em;top:.38em}
 .hero-caption{font-size:calc(20px * var(--font-scale));padding-bottom:32px}
}
@media(min-width:768px) and (max-width:1099px){
 .hero{grid-template-columns:minmax(0,1fr) minmax(290px,.9fr);gap:28px;width:calc(100% - 64px);min-height:0}
 .hero-copy{padding:0}.hero h1{font-size:calc(clamp(42px,5.3vw,58px) * var(--font-scale))}
 .hero-visual{width:100%;max-width:410px;padding:0}.hero-title-flower{width:60px}
}

/* 2026-10-22: one explicit reading control in both sizes. */
html body .site-header .reading-toggle{font-size:14px;line-height:1.4;min-height:44px;min-width:0;max-width:none;padding:0 3px;white-space:nowrap;font-weight:600}
@media(max-width:767px){html body .site-header .header-actions{gap:12px}html body .site-header .reading-toggle{font-size:12px}html body .site-header .menu-toggle{flex-shrink:0}}
