:root{color-scheme:light;--ink:#26342a;--ink-soft:#536052;--green:#31533a;--green-deep:#243f2d;--lime:#92c51f;--lime-soft:#e6efc9;--lime-bright:#b5d96c;--cream:#f8f6ef;--paper:#fffefa;--line:#e8e3d7;--muted:#7f857a;font-synthesis:none;text-rendering:optimizelegibility;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-size:16px;line-height:1.6}a{color:inherit}a:focus-visible{outline-offset:4px;outline:3px solid #60852c}.wrap{width:min(1160px,100% - 48px);margin-inline:auto}.skip-link{z-index:10;background:var(--ink);color:#fff;border-radius:4px;padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:2;background:#fffefaf5;border-bottom:1px solid #26342a12;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:32px;min-height:92px;display:flex}.brand{align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;mix-blend-mode:multiply;width:184px;max-height:68px;display:block}.primary-nav,.footer-nav{align-items:center;gap:clamp(18px,3vw,34px);display:flex}.primary-nav a,.footer-nav a{color:var(--ink-soft);font-size:13px;font-weight:650;text-decoration:none;transition:color .18s}.primary-nav a:hover,.primary-nav a[aria-current=page],.footer-nav a:hover{color:#56802d}.header-cta,.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:13px;min-height:46px;padding:0 18px;font-size:12px;font-weight:730;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex}.header-cta{background:var(--green);color:#fff}.header-cta:hover,.button:hover{transform:translateY(-2px)}.header-cta span,.button span{font-size:16px}.hero{grid-template-columns:1fr .94fr;align-items:center;gap:clamp(38px,7vw,92px);min-height:660px;padding-block:68px 86px;display:grid}.hero-copy{z-index:1;max-width:590px;position:relative}.eyebrow{color:#5c7354;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 18px;font-size:10px;font-weight:780;line-height:1.4;display:flex}.eyebrow-dot{background:#8fb946;border-radius:50%;width:7px;height:7px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:500}.hero h1{letter-spacing:-.065em;max-width:650px;margin-bottom:22px;font-size:clamp(49px,6.4vw,78px);line-height:.99}.hero h1 span{color:#71815d;font-style:italic}.hero-lede{color:#657066;max-width:490px;margin-bottom:30px;font-size:16px;line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:var(--green-deep)}.text-link{color:var(--green);align-items:center;gap:10px;font-size:12px;font-weight:730;text-decoration:none;display:inline-flex}.text-link:hover{color:#698d3f}.preview-note{color:#8b9388;letter-spacing:.05em;margin:26px 0 0;font-size:10px}.hero-photo{aspect-ratio:.82;background:#e8e5d8;border:8px solid #fffefac2;border-radius:34px 34px 34px 118px;justify-self:end;width:min(100%,530px);position:relative;overflow:hidden;box-shadow:0 24px 60px #373c2b1f}.hero-photo:after{pointer-events:none;content:"";background:linear-gradient(#0000,#1e2b2242);position:absolute;inset:35% 0 0}.hero-photo img{object-fit:cover;object-position:50% 35%;width:100%;height:100%;display:block}.hero-photo-caption{z-index:1;background:var(--paper);color:var(--ink-soft);border:1px solid #26352b14;border-radius:999px;align-items:center;gap:10px;padding:12px 18px;font-size:11px;font-weight:670;display:flex;position:absolute;bottom:6%;left:6%;box-shadow:0 10px 28px #1e2a221f}.caption-mark{background:#9baa6b;border-radius:50%;width:8px;height:8px}.preview-dot{vertical-align:1px;background:#a58d56;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.welcome-band{background:#efede3;padding-block:66px}.welcome-inner{grid-template-columns:130px 1fr;align-items:center;gap:44px;max-width:900px;display:grid}.welcome-mark{background:var(--paper);border-radius:50%;place-items:center;width:120px;height:120px;display:grid;box-shadow:0 12px 32px #323a2912}.welcome-mark img{object-fit:contain;mix-blend-mode:multiply;width:86px;height:86px}.observation-points{grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.observation-points li{background:#fffefab3;border:1px solid #26352b14;border-radius:14px;gap:3px;padding:12px 14px;display:grid}.observation-points strong{color:var(--green);font-size:11px}.observation-points span{color:#687264;font-size:10px;line-height:1.5}.welcome-copy h2,.section-heading h2,.company-copy h2{letter-spacing:-.045em;margin-bottom:14px;font-size:clamp(32px,4.2vw,48px);line-height:1.08}.welcome-copy>p:last-child{color:#687264;max-width:660px;margin:0;font-size:14px;line-height:1.85}.planned-sections{padding-block:92px 104px}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px;display:flex}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2{margin:0}.section-aside{color:#81897e;max-width:230px;margin-bottom:4px;font-size:11px;line-height:1.7}.card-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.info-card{background:var(--paper);border:1px solid #26352b14;border-radius:22px;min-height:260px;padding:28px 26px 24px;text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;box-shadow:0 12px 32px #3a392b0e}.info-card:hover{border-color:#b4c28c;transform:translateY(-4px);box-shadow:0 18px 38px #1e2a2217}.card-number{color:#a2aa9e;letter-spacing:.08em;font-size:10px;position:absolute;top:25px;right:26px}.card-icon{background:var(--lime-soft);width:48px;height:48px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:24px;font-size:26px;display:grid}.card-icon-leaf{color:#6e9346;font-family:Georgia,serif;font-size:32px}.card-icon-sun{color:#987d3a;background:#f4f0d8;font-family:Georgia,serif;font-size:22px}.info-card h3{letter-spacing:-.035em;margin-bottom:8px;font-size:26px}.info-card p{color:#788176;min-height:54px;margin-bottom:19px;font-size:12px;line-height:1.7}.card-link{color:var(--green);align-items:center;gap:10px;font-size:10px;font-weight:750;display:inline-flex}.approach-band{background:#efede3;padding-block:84px}.approach-inner{grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(40px,7vw,84px);display:grid}.approach-photo{aspect-ratio:1.04;border:8px solid var(--paper);border-radius:30px 30px 30px 110px;min-height:440px;position:relative;overflow:hidden;box-shadow:0 20px 48px #373c2b1a}.approach-photo img{object-fit:cover;object-position:50% 38%;width:100%;height:100%;display:block;position:absolute;inset:0}.image-tag{background:var(--paper);color:var(--ink-soft);border-radius:999px;padding:10px 16px;font-size:10px;font-weight:700;position:absolute;bottom:20px;left:20px;box-shadow:0 8px 20px #1e2a221f}.approach-copy .eyebrow{color:#738349}.approach-copy h2,.home-faq h2{letter-spacing:-.05em;max-width:510px;margin-bottom:18px;font-size:clamp(36px,4.8vw,54px);line-height:1.06}.approach-copy>p:not(.eyebrow){color:#667164;max-width:500px;margin-bottom:26px;font-size:14px;line-height:1.8}.button-light{background:var(--green);color:#fff}.button-light:hover{background:var(--green-deep)}.company-band{grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(40px,7vw,92px);padding-block:96px;display:grid}.company-copy h2{max-width:500px}.company-copy>p:not(.eyebrow){color:#687264;max-width:480px;margin-bottom:22px;font-size:14px;line-height:1.8}.company-photo{aspect-ratio:1.45;background:#e6e2d6;border-radius:32px 32px 110px;overflow:hidden}.company-photo img{object-fit:cover;object-position:50% 62%;width:100%;height:100%;display:block}.home-faq{grid-template-columns:70px 1fr auto;align-items:center;gap:28px;padding-block:74px;display:grid}.home-faq .eyebrow{margin-bottom:12px}.home-faq h2{max-width:640px;margin-bottom:10px;font-size:clamp(30px,4vw,42px)}.home-faq-copy>p:last-child{color:#667166;max-width:620px;margin:0;font-size:13px}.faq-ornament{border:1px solid #b8c19f;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:relative}.faq-ornament:before,.faq-ornament:after,.faq-ornament span{content:"";background:#8d9b75;width:1px;height:40px;position:absolute}.faq-ornament:after{transform:rotate(60deg)}.faq-ornament span{transform:rotate(120deg)}.faq-ornament span:nth-child(2){display:none}.contact-cta{padding-block:16px 74px}.contact-cta-inner{background:var(--green-deep);color:#fff;border-radius:30px;justify-content:space-between;align-items:center;gap:34px;padding:48px 54px;display:flex}.contact-cta .eyebrow{color:#d4e2ae;margin-bottom:12px}.contact-cta h2{letter-spacing:-.04em;margin-bottom:8px;font-size:clamp(32px,4vw,44px)}.contact-cta p:last-child{color:#e0e6d8;margin:0;font-size:13px}.contact-cta .button-light{background:var(--lime-soft);color:var(--green-deep);flex:none}.contact-cta .button-light:hover{background:var(--lime-bright)}.learning-section{padding-block:86px 96px}.learning-heading{max-width:700px;margin-bottom:30px}.learning-heading h2,.service-guide-inner h2,.booking-intro h2,.about-copy h2{letter-spacing:-.05em;margin-bottom:12px;font-size:clamp(34px,4.4vw,50px);line-height:1.08}.learning-heading>p:last-child,.booking-intro>p:last-child{color:#687264;margin-bottom:0;font-size:14px}.learning-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.learning-card{background:var(--paper);border:1px solid #26352b14;border-radius:22px;min-height:226px;padding:28px 26px;position:relative;box-shadow:0 12px 32px #3a392b0b}.learning-number{background:var(--lime-soft);width:38px;height:38px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:26px;font-size:11px;font-weight:750;display:grid}.learning-card h3{margin-bottom:9px;font-size:24px}.learning-card p{color:#687264;margin:0;font-size:13px;line-height:1.75}.service-guide-band{background:#efede3;padding-block:82px}.service-guide-inner{grid-template-columns:.9fr 1.1fr;align-items:start;gap:clamp(38px,8vw,100px);display:grid}.service-guide-inner>div>p:last-child{color:#687264;max-width:470px;margin:0;font-size:14px;line-height:1.8}.question-list{border-top:1px solid #d8d8c9;gap:0;margin:0;padding:0;list-style:none;display:grid}.question-list li{color:var(--ink-soft);border-bottom:1px solid #d8d8c9;padding:16px 10px 16px 28px;font-size:13px;position:relative}.question-list li:before{background:var(--lime);content:"";border-radius:50%;width:7px;height:7px;position:absolute;top:24px;left:5px}.content-panel-note{background:#fdfcf7}.faq-list{max-width:950px;padding-bottom:26px}.faq-item{background:var(--paper);border:1px solid #26352b14;border-radius:18px;margin-bottom:12px;padding:0 24px;box-shadow:0 8px 24px #3a392b09}.faq-item summary{cursor:pointer;min-height:72px;color:var(--ink);justify-content:space-between;align-items:center;gap:18px;font-family:Georgia,Times New Roman,serif;font-size:20px;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-toggle{background:var(--lime-soft);border-radius:50%;flex:none;width:30px;height:30px;position:relative}.faq-toggle:before,.faq-toggle:after{background:var(--green);content:"";width:12px;height:2px;position:absolute;top:14px;left:9px}.faq-toggle:after{transition:transform .18s;transform:rotate(90deg)}.faq-item[open] .faq-toggle:after{transform:rotate(0)}.faq-item>p{color:#687264;max-width:780px;margin:-2px 42px 22px 0;font-size:13px;line-height:1.8}.faq-business-note{padding-top:30px}.faq-business-note>.text-link{margin-top:22px;display:inline-flex}.booking-guide{grid-template-columns:.9fr 1.1fr;gap:clamp(40px,8vw,100px);padding-block:18px 100px;display:grid}.booking-details{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.booking-detail{background:var(--paper);border:1px solid #26352b14;border-radius:20px;flex-direction:column;gap:18px;min-height:138px;padding:21px;display:flex}.booking-detail>span{color:#7b8a5a;letter-spacing:.12em;font-size:10px;font-weight:750}.booking-detail p{color:#687264;margin:0;font-size:12px;line-height:1.65}.booking-detail strong{color:var(--ink);font-size:14px}.contact-pending{padding-top:0}.about-feature{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(40px,8vw,100px);padding-bottom:86px;display:grid}.about-photo{border:8px solid var(--paper);background:#e6e2d6;border-radius:28px 28px 28px 100px;height:500px;overflow:hidden;box-shadow:0 18px 44px #373c2b17}.about-photo img{object-fit:cover;object-position:50% 35%;width:100%;height:100%;display:block}.about-copy>p:not(.eyebrow){color:#687264;font-size:14px;line-height:1.8}.about-checklist{gap:12px;margin:24px 0 0;padding:0;list-style:none;display:grid}.about-checklist li{color:var(--ink-soft);padding-left:25px;font-size:13px;position:relative}.about-checklist li:before{content:"";border:2px solid #9abd4b;border-radius:50%;width:11px;height:11px;position:absolute;top:6px;left:0}.about-pending{padding-top:10px}.page-hero{padding-block:84px 68px}.page-hero h1{letter-spacing:-.06em;max-width:780px;margin-bottom:20px;font-size:clamp(45px,7vw,70px);line-height:1.02}.page-lede{color:#647064;max-width:620px;margin-bottom:0;font-size:16px;line-height:1.8}.page-content{padding-bottom:100px}.narrow-content{max-width:1160px}.content-panel{border:1px solid var(--line);background:var(--paper);border-radius:24px;padding:clamp(26px,5vw,48px)}.content-panel .eyebrow{margin-bottom:12px}.content-panel h2,.form-note h2{letter-spacing:-.04em;margin-bottom:12px;font-size:clamp(27px,4vw,36px)}.content-panel p:last-child,.form-note p{color:#697469;max-width:690px;margin-bottom:0;font-size:14px;line-height:1.8}.narrow-content>.text-link{margin-top:25px}.detail-list{gap:12px;margin:23px 0 0;padding:0;list-style:none;display:grid}.detail-list li{color:#687267;align-items:center;gap:12px;font-size:13px;display:flex}.detail-list li:before{background:var(--lime);content:"";border-radius:50%;flex:none;width:7px;height:7px}.contact-grid{grid-template-columns:1.1fr .9fr;gap:18px;display:grid}.form-note{background:#efede3;border-radius:24px;padding:clamp(26px,5vw,40px)}.note-icon{background:var(--lime);width:38px;height:38px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:22px;display:grid}.form-note h2{font-size:28px}.site-footer{border-top:1px solid var(--line);background:#eeeadf}.footer-main{grid-template-columns:auto 1fr auto;align-items:center;gap:32px;min-height:118px;display:grid}.brand-footer .brand-logo{width:152px;max-height:62px}.footer-message{color:#778176;margin:0;font-size:11px}.footer-nav{gap:20px}.footer-nav a{font-size:10px}.footer-bottom{color:#858d82;border-top:1px solid #1e2a2217;justify-content:space-between;align-items:center;gap:20px;min-height:48px;font-size:9px;display:flex}.footer-bottom p{margin:0}@media (width<=820px){.header-inner{gap:16px;min-height:82px}.brand-logo{width:158px;max-height:60px}.primary-nav{gap:16px}.primary-nav a{font-size:11px}.header-cta{min-height:40px;padding-inline:12px;font-size:10px}.hero{grid-template-columns:1fr .8fr;gap:24px;min-height:0;padding-block:66px 76px}.hero-photo{width:100%}.approach-inner{gap:36px}.approach-photo{min-height:360px}.company-band,.booking-guide,.about-feature{gap:34px}.about-photo{height:430px}.home-faq{grid-template-columns:54px 1fr}.home-faq .button{grid-column:2;justify-self:start}.contact-cta-inner{padding:40px}.card-grid{gap:10px}.info-card{padding:22px 18px}.footer-main{grid-template-columns:auto 1fr;padding-block:24px}.footer-nav{grid-column:1/-1}}@media (width<=620px){.wrap{width:min(100% - 36px,500px)}.header-inner{flex-wrap:wrap;gap:0;min-height:72px;padding-block:13px}.brand-logo{width:142px;max-height:56px}.header-cta{margin-left:auto}.primary-nav{order:3;justify-content:space-between;gap:8px;width:100%;padding-top:14px}.primary-nav a{padding-block:3px;font-size:10px}.hero{grid-template-columns:1fr;gap:36px;padding-block:58px 64px}.hero h1{max-width:490px;font-size:clamp(47px,13vw,66px)}.hero-lede{font-size:14px}.hero-photo{aspect-ratio:.8;border-radius:28px 28px 28px 88px;justify-self:center;width:min(100%,390px)}.welcome-band{padding-block:52px}.welcome-inner{grid-template-columns:1fr;justify-items:start;gap:22px}.welcome-mark{width:76px;height:76px}.welcome-mark img{width:56px;height:56px}.observation-points{grid-template-columns:1fr}.welcome-copy h2,.section-heading h2{font-size:34px}.planned-sections{padding-block:62px 66px}.section-heading{display:block}.section-aside{max-width:none;margin-top:12px}.card-grid{grid-template-columns:1fr;gap:12px}.info-card{min-height:0;padding:24px}.info-card p{min-height:0}.approach-band{padding-block:60px}.approach-inner{grid-template-columns:1fr;gap:32px}.approach-photo{aspect-ratio:1.1;border-radius:26px 26px 26px 80px;min-height:0}.approach-copy h2{font-size:39px}.company-band{grid-template-columns:1fr;gap:24px;padding-block:64px}.company-copy h2{font-size:36px}.company-photo{aspect-ratio:1.16;border-radius:24px 24px 76px}.home-faq{grid-template-columns:1fr;gap:20px;padding-block:58px}.faq-ornament{width:48px;height:48px}.home-faq .button{grid-column:auto}.contact-cta{padding-block:0 58px}.contact-cta-inner{border-radius:24px;flex-direction:column;align-items:flex-start;padding:32px 26px}.page-hero{padding-block:60px 44px}.page-hero h1{font-size:clamp(43px,12vw,60px)}.page-lede{font-size:14px}.page-content{padding-bottom:64px}.contact-grid{grid-template-columns:1fr}.learning-section{padding-block:60px 68px}.learning-grid{grid-template-columns:1fr}.learning-card{min-height:0}.service-guide-band{padding-block:60px}.service-guide-inner{grid-template-columns:1fr;gap:30px}.faq-list{padding-bottom:10px}.faq-item{padding-inline:18px}.faq-item summary{min-height:66px;font-size:18px}.faq-item>p{margin-right:0}.booking-guide{grid-template-columns:1fr;gap:28px;padding-bottom:62px}.booking-details{grid-template-columns:1fr}.booking-detail{min-height:0}.about-feature{grid-template-columns:1fr;gap:28px;padding-bottom:60px}.about-photo{max-width:390px;height:420px}.about-pending{padding-top:0}.footer-main{grid-template-columns:1fr;gap:14px}.footer-nav{flex-wrap:wrap;grid-column:auto}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding-block:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
