
:root{--ink:#102424;--ink2:#183334;--sand:#f3ede2;--cream:#fffaf2;--sea:#2f7976;--aqua:#87c8be;--sun:#d8aa61;--line:rgba(16,36,36,.14);--muted:#657372;--shadow:0 24px 70px rgba(16,36,36,.14);--radius:26px;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}.serif{font-family:Georgia,"Times New Roman",serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block;color:transparent;font-size:0}button,input,select,textarea{font:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.eyebrow{font-size:.77rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:var(--sea)}h1,h2,h3{margin:0;line-height:1.03}h1{font-size:clamp(3rem,7vw,7.7rem);letter-spacing:-.055em;font-weight:650}h2{font-size:clamp(2.1rem,4vw,4.5rem);letter-spacing:-.04em}h3{font-size:clamp(1.1rem,2vw,1.55rem)}p{margin:.6rem 0;color:#4f5f5e}.lede{font-size:clamp(1.05rem,1.8vw,1.34rem);max-width:720px;color:#3a504f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:1px solid var(--ink);padding:.88rem 1.2rem;border-radius:999px;font-weight:800;transition:.2s ease;cursor:pointer;background:transparent}.btn:hover,.btn:focus-visible{transform:translateY(-2px);box-shadow:0 12px 25px rgba(16,36,36,.13)}.btn.primary{background:var(--ink);color:white}.btn.light{background:white;border-color:white}.btn.sun{background:var(--sun);border-color:var(--sun);color:#18211f}.btn.small{padding:.65rem .9rem;font-size:.9rem}.chip{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.45rem .72rem;font-size:.83rem;font-weight:750;background:rgba(255,255,255,.65)}
header{position:sticky;top:0;z-index:40;padding:12px 0;background:rgba(255,250,242,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,36,36,.06)}.nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:11px;font-weight:900;letter-spacing:.04em}.brandmark{width:44px;height:44px;border:1px solid var(--ink);border-radius:50% 50% 46% 54%;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(145deg,var(--aqua),var(--cream) 65%)}.brandmark:after{content:"";width:28px;height:17px;border:2px solid var(--ink);border-top:0;border-radius:0 0 50% 50%;transform:rotate(-8deg)}.brand b{font-family:Georgia,serif;font-size:1.04rem}.desktop{display:flex;align-items:center;justify-content:center;gap:25px;font-size:.94rem;font-weight:750}.desktop a,.dropbtn{padding:10px 2px}.dropdown{position:relative}.dropbtn{border:0;background:none;color:inherit;font-weight:inherit;cursor:pointer}.dropmenu{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(7px);min-width:250px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease}.dropdown.open .dropmenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.dropmenu a{display:block;padding:10px 12px;border-radius:10px}.dropmenu a:hover,.dropmenu a:focus-visible{background:var(--sand)}.nav-actions{display:flex;align-items:center;gap:8px}.burger{display:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:white;cursor:pointer}.burger span{display:block;width:18px;height:2px;background:var(--ink);margin:4px auto}.mobile-panel{display:none}
.hero{min-height:calc(100vh - 70px);display:grid;align-items:end;padding:54px 0 36px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(135,200,190,.36),transparent 28%),linear-gradient(145deg,transparent 40%,rgba(216,170,97,.12));pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:35px;align-items:end;position:relative}.hero-copy{padding:70px 0 32px}.hero h1 .accent{display:block;color:var(--sea);font-style:italic;font-weight:450}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.hero-visual{height:min(74vh,760px);border-radius:50% 50% 28px 28px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:#ced9d3}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-visual:after{content:"Artist's render • finishes may vary";position:absolute;right:14px;bottom:14px;background:rgba(16,36,36,.88);color:white;padding:8px 11px;border-radius:999px;font-size:.72rem}.hero-card{position:absolute;left:18px;bottom:42px;width:240px;background:rgba(255,255,255,.94);padding:18px;border-radius:22px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.hero-card strong{display:block;font-size:2.3rem;line-height:1}.hero-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}
section{padding:88px 0}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px}.section-head p{max-width:540px}.dark{background:var(--ink);color:white}.dark p{color:#c9d4d2}.dark .eyebrow{color:var(--aqua)}.sand{background:var(--sand)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{padding:24px;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px rgba(16,36,36,.05)}.card .num{font-family:Georgia,serif;font-size:3.2rem;color:var(--aqua);line-height:1;margin-bottom:20px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.feature{padding:20px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.045)}.feature b{display:block;margin-bottom:6px}.showcase{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.photo{position:relative;overflow:hidden;border-radius:var(--radius);min-height:320px;background:#d8ddd8}.photo img{width:100%;height:100%;object-fit:cover;transition:.5s ease}.photo:hover img{transform:scale(1.035)}.photo.tall{min-height:650px}.caption{position:absolute;left:18px;bottom:18px;background:rgba(16,36,36,.85);color:white;padding:10px 13px;border-radius:14px;font-size:.82rem}.stack{display:grid;gap:14px}
.finder{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px;align-items:stretch}.finder-controls,.finder-result{border-radius:30px;padding:28px}.finder-controls{background:#fff;border:1px solid var(--line)}.finder-controls label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin:18px 0 8px}.seg{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.seg button{border:1px solid var(--line);background:var(--cream);padding:12px;border-radius:14px;cursor:pointer;font-weight:750}.seg button.active{background:var(--ink);color:#fff}.finder-result{background:linear-gradient(145deg,var(--sea),#153a3b);color:white;position:relative;overflow:hidden}.finder-result:before{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.15);border-radius:50%;right:-50px;top:-70px}.finder-result p{color:#dbe8e6}.fit-title{font-family:Georgia,serif;font-size:clamp(2rem,4vw,4rem);line-height:1}.fit-pills{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.fit-pills span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:7px 10px;font-size:.8rem}.route-list{display:grid;gap:10px;margin-top:24px}.route{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}.route i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--aqua);color:var(--ink);font-style:normal;font-weight:900}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mapcard{min-height:470px;border-radius:30px;background:var(--ink);color:white;padding:32px;position:relative;overflow:hidden}.mapcard:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:45px 45px}.mapcard .pin{position:absolute;width:26px;height:26px;border-radius:50% 50% 50% 0;background:var(--sun);transform:rotate(-45deg);left:53%;top:47%;box-shadow:0 0 0 14px rgba(216,170,97,.15)}.mapcard .pin:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--ink);top:9px;left:9px}.map-copy{position:relative;z-index:2;max-width:330px}.nearby{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.nearby div{padding:18px;border:1px solid var(--line);border-radius:18px;background:white}.nearby b{display:block}.testimonial-note{font-size:.78rem;color:var(--muted)}
.page-hero{padding:90px 0 50px;background:linear-gradient(150deg,var(--sand),var(--cream))}.page-hero .wrap{display:grid;grid-template-columns:1fr .65fr;gap:35px;align-items:end}.page-hero h1{font-size:clamp(3rem,6vw,6rem)}.stats{display:flex;gap:9px;flex-wrap:wrap}.stats .chip{background:white}.prose{max-width:780px}.prose h2{margin:2.3rem 0 1rem;font-size:clamp(1.8rem,3vw,3rem)}.prose h3{margin:1.7rem 0 .5rem}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:220px;gap:12px}.gallery-grid .photo:nth-child(1){grid-column:span 7;grid-row:span 2}.gallery-grid .photo:nth-child(2){grid-column:span 5}.gallery-grid .photo:nth-child(3){grid-column:span 5}.gallery-grid .photo:nth-child(4){grid-column:span 4}.gallery-grid .photo:nth-child(5){grid-column:span 4}.gallery-grid .photo:nth-child(6){grid-column:span 4}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.contact-card{padding:28px;background:var(--ink);color:white;border-radius:28px}.contact-card p{color:#ccd9d7}.form-card{padding:28px;background:white;border:1px solid var(--line);border-radius:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px;background:#fffdf9;color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.form-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.legal{font-size:.78rem;color:var(--muted);margin-top:10px}.notice{padding:18px;border-radius:16px;background:#eef7f4;border:1px solid #c7dfd9;margin:16px 0}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{font-weight:850;cursor:pointer}.faq p{padding-right:10%}footer{background:#0b1b1b;color:white;padding:46px 0 26px}.foot{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:30px}.foot p,.foot a{color:#bac8c6}.foot-links{display:grid;gap:8px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:18px;color:#99aaa8;font-size:.82rem;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:1040px){.desktop{display:none}.burger{display:block}.nav{grid-template-columns:1fr auto}.nav-actions .btn{display:none}.mobile-panel{position:fixed;inset:69px 0 0;background:var(--cream);z-index:35;padding:22px;overflow:auto;transform:translateY(-12px);opacity:0;visibility:hidden;transition:.18s ease}.mobile-panel.open{display:block;transform:none;opacity:1;visibility:visible}.mobile-panel a,.mobile-panel button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:15px 4px;font-size:1.15rem;font-weight:800}.mobile-sub{display:none;padding-left:14px}.mobile-sub.open{display:block}.hero-grid,.split,.finder,.location-grid,.contact-grid,.page-hero .wrap{grid-template-columns:1fr}.hero{padding-top:10px}.hero-copy{padding:48px 0 0}.hero-visual{height:60vh;min-height:490px}.hero-card{left:18px;bottom:18px}.feature-grid{grid-template-columns:repeat(2,1fr)}.showcase{grid-template-columns:1fr}.photo.tall{min-height:520px}.cards{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}.foot>:first-child{grid-column:1/-1}}
@media(max-width:680px){.wrap{width:min(var(--max),calc(100% - 28px))}section{padding:66px 0}.brand span:last-child{display:none}.hero-visual{height:55vh;min-height:430px;border-radius:34px 34px 22px 22px}.hero-card{width:190px}.feature-grid,.cards,.nearby,.form-grid,.foot{grid-template-columns:1fr}.showcase .photo.tall{min-height:430px}.gallery-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:300px}.gallery-grid .photo{grid-column:auto!important;grid-row:auto!important}.field.full{grid-column:auto}.section-head{display:block}.section-head .btn{margin-top:18px}.page-hero{padding-top:65px}.finder-controls,.finder-result,.contact-card,.form-card{padding:22px}.hero h1{font-size:clamp(3.4rem,18vw,5.2rem)}.nav-actions{gap:4px}.mobile-panel{inset:69px 0 0}.hero-meta{gap:8px}.copyright{display:block}.copyright span{display:block;margin-top:6px}}
