:root{--paper:#f8f9f6;--soft:#eef1eb;--ink:#25332e;--muted:#616e66;--line:#cfd6cd;--sage:#d9e0d5;--accent:#ac593d;--font:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--gutter:clamp(24px,4.5vw,72px);--header-height:82px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 22px)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,p,dl,dd{margin:0}h1,h2{font-weight:500}
::selection{background:#d9e0d5;color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
.container{width:min(calc(100% - var(--gutter)*2),1312px);margin-inline:auto}
.arrow{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:20px;z-index:100;padding:10px 18px;background:var(--ink);color:var(--paper);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{width:min(calc(100% - var(--gutter)*2),1312px);min-height:var(--header-height);margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:40px}
.site-name{display:inline-block;padding-block:10px;font-size:24px;font-weight:600;letter-spacing:-1.2px;line-height:1.2}
.site-nav{display:flex;align-items:center;gap:38px;font-size:13px}.site-nav a{padding:12px 0;position:relative}
.site-nav a::after{content:"";position:absolute;left:0;bottom:6px;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 180ms}
.site-nav a:hover::after,.site-nav a[aria-current="location"]::after{transform:scaleX(1)}
.site-nav .nav-contact{display:flex;align-items:center;gap:12px;margin-left:22px;font-size:14px}.nav-contact .arrow{width:17px;height:17px}
.menu-toggle{display:none;align-items:center;gap:14px;border:0;background:none;padding:12px 0 12px 18px;cursor:pointer;font-size:13px}
.menu-lines{width:22px;height:16px;position:relative}.menu-lines::before,.menu-lines::after{content:"";position:absolute;left:0;width:22px;height:1px;background:currentColor;transition:transform 180ms}.menu-lines::before{top:4px}.menu-lines::after{bottom:4px}
.menu-toggle[aria-expanded="true"] .menu-lines::before{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-lines::after{transform:translateY(-3.5px) rotate(-45deg)}
.hero{padding-top:76px}.hero-intro{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);align-items:end;gap:7%}
.hero h1{font-size:clamp(76px,8.55vw,128px);font-weight:600;letter-spacing:-.06em;word-spacing:.055em;line-height:1.08;white-space:nowrap}.hero h1 span{color:var(--accent)}
.hero-description{color:var(--muted);font-size:16px;line-height:1.8;padding-bottom:14px;max-width:365px}
.text-action{display:inline-flex;align-items:center;gap:22px;font-size:15px;font-weight:500;margin-top:30px;min-height:48px}
.circle-arrow{width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;transition:background 180ms,transform 180ms}.text-action:hover .circle-arrow{background:var(--accent);transform:rotate(45deg)}
.visual-slot{height:280px;margin-top:54px;position:relative;overflow:hidden;background:var(--sage);border-radius:3px}
.visual-label{position:absolute;left:22px;bottom:18px;z-index:1;color:#526050;font-size:11px}.visual-plane{position:absolute;top:0;bottom:0;right:0;width:46%;background:#e4e9e0}
.hero-foot{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding-top:15px;color:var(--muted)}.scroll-link{display:flex;align-items:center;gap:10px;padding:8px 0}.scroll-link .arrow{width:16px;height:16px}
.content-section{padding-block:104px}.editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:56px}
.section-label{padding-top:10px;color:var(--muted);font-size:10px;letter-spacing:.12em;line-height:1.7;text-transform:uppercase}.section-body{min-width:0}
h2{font-size:clamp(35px,3.6vw,52px);line-height:1.12;letter-spacing:-.05em}
.copy-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;margin-top:34px;color:var(--muted);font-size:14px;line-height:1.85}
.inline-link{display:inline-flex;align-items:center;gap:18px;margin-top:24px;padding-bottom:5px;color:var(--ink);font-size:13px;border-bottom:1px solid var(--line);transition:border-color 180ms}.inline-link:hover{border-color:var(--accent)}.inline-link .arrow{width:16px;height:16px}
.offer{background:var(--soft);padding-block:84px}.offer-heading{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:10%;align-items:end;margin-bottom:44px}.offer-heading .section-label{margin-bottom:22px;padding-top:0}
.offer-description{color:var(--muted);font-size:14px;line-height:1.85;max-width:370px}.offer-table-wrap{overflow-x:auto;width:100%;scrollbar-width:thin;scrollbar-color:#9ba899 transparent}
.offer-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left;font-size:13px}.offer-table th,.offer-table td{border-bottom:1px solid var(--line);padding:24px 18px;font-weight:400}
.offer-table thead th{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-block:15px}.offer-table th:first-child{padding-left:0;width:29%}.offer-table th:nth-child(2){width:25%}.offer-table th:last-child,.offer-table td:last-child{padding-right:0;text-align:right}.offer-table tbody th{font-size:15px;font-weight:500}.offer-table tbody td{color:var(--muted)}
.template-note{margin-top:18px;font-size:10px;color:var(--muted)}.location-body{max-width:760px}.location-description{max-width:615px;margin-top:30px;font-size:15px;line-height:1.85;color:var(--muted)}
.address{display:flex;justify-content:space-between;gap:32px;margin-top:35px;padding-top:22px;border-top:1px solid var(--line);font-size:12px}.address dd{font-size:20px;line-height:1}
.contact{background:#e9eee5;padding-block:70px 0}.contact-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:15%;padding-bottom:74px}.contact .section-label{margin-bottom:22px;padding-top:0}.contact h2{font-size:clamp(36px,4.1vw,59px);letter-spacing:-.055em}.contact h2 span{color:var(--accent)}
.contact-description{max-width:350px;margin-top:22px;color:var(--muted);font-size:14px;line-height:1.8}.contact-details{padding-top:36px}.contact-details>div{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #bec9ba;padding:20px 0}.contact-details dt{font-size:13px}.contact-details dd{font-size:21px;line-height:1.3}
.site-footer{border-top:1px solid #bec9ba;min-height:100px;display:flex;justify-content:space-between;align-items:center;gap:30px}.site-footer .site-name{font-size:22px}.footer-caption{font-size:10px;color:var(--muted)}.back-top{display:flex;align-items:center;gap:16px;font-size:11px;padding-block:12px}.back-top .arrow{width:18px;height:18px;transition:transform 180ms}.back-top:hover .arrow{transform:translateY(-3px)}
@media(min-width:1600px){.hero{padding-top:90px}.visual-slot{height:320px}}
@media(max-width:1050px){
 .hero{padding-top:64px}.hero-intro{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:5%}.hero h1{font-size:8.8vw}.hero-description{font-size:14px;line-height:1.8}.visual-slot{height:250px;margin-top:42px}
 .editorial-grid{grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:32px}.copy-columns{gap:30px}.content-section{padding-block:80px}.contact{padding-bottom:0}.contact-grid{gap:10%}
}
@media(max-width:760px){
 :root{--header-height:72px;--gutter:24px}.header-inner{flex-wrap:wrap;gap:0}.site-name{font-size:22px}.menu-toggle:not([hidden]){display:flex}
 .site-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:18px}.site-nav a{border-top:1px solid var(--line);font-size:16px;padding:14px 0}.site-nav a::after{display:none}.site-nav .nav-contact{margin:0;justify-content:space-between;font-size:16px}
 .has-js .site-nav{display:none}.has-js .site-header.menu-open .site-nav{display:flex}
 .hero{padding-top:44px}.hero-intro{grid-template-columns:1fr;gap:24px}.hero h1{font-size:clamp(50px,11.6vw,86px);letter-spacing:-.06em}.text-action{margin-top:19px;gap:18px;min-height:44px;font-size:13px}.circle-arrow{width:39px;height:39px}.circle-arrow .arrow{width:18px;height:18px}
 .hero-description{padding:0;max-width:440px;font-size:14px;line-height:1.8}.visual-slot{height:180px;margin-top:30px}.visual-label{left:14px;bottom:12px;font-size:10px}.hero-foot{font-size:10px;padding-top:9px}.scroll-link{gap:8px}
 .content-section{padding-block:60px}.editorial-grid{grid-template-columns:1fr;gap:25px}.section-label{font-size:10px;padding-top:0}h2{font-size:clamp(32px,7.6vw,44px);letter-spacing:-.045em}
 .copy-columns{grid-template-columns:1fr;gap:20px;margin-top:26px;font-size:14px}.inline-link{margin-top:20px}.offer-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.offer-heading .section-label{margin-bottom:22px}.offer-description{max-width:430px}
 .offer-table{min-width:550px}.offer-table th,.offer-table td{padding:21px 14px}.offer-table tbody th{font-size:13px}.template-note{font-size:10px}.location-description{font-size:14px;margin-top:25px}.address{margin-top:25px;padding-top:20px;font-size:11px}
 .contact{padding-bottom:0}.contact-grid{grid-template-columns:1fr;gap:25px;padding-bottom:50px}.contact h2{font-size:clamp(32px,8.4vw,48px)}.contact-description{margin-top:20px}.contact-details{padding-top:0}.contact-details dt{font-size:12px}
 .site-footer{padding-block:24px;min-height:110px;flex-wrap:wrap;gap:18px}.footer-caption{width:100%;order:3}
}
@media(max-width:360px){:root{--gutter:20px}.hero h1{font-size:45px}.hero{padding-top:36px}.hero-description,.copy-columns,.location-description,.contact-description{font-size:13px}.contact h2{font-size:31px}}
@media(prefers-reduced-motion:no-preference){.hero-intro{animation:appear 500ms ease-out both}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
