:root{--bg:#0a0d0b;--bg2:#111713;--lime:#c7f36b;--white:#f1f3ec;--muted:#9aab9c;--line:rgba(227,245,221,.16);--font:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:var(--lime);color:var(--bg)}a{color:inherit;text-decoration:none}button{font:inherit}#progress{height:2px;position:fixed;top:0;left:0;z-index:100;width:0;background:var(--lime)}.noise{position:fixed;inset:0;pointer-events:none;z-index:30;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:420px;height:420px;left:0;top:0;z-index:0;pointer-events:none;background:radial-gradient(circle,rgba(154,206,79,.065),transparent 68%);transform:translate(-50%,-50%)}.section-shell{padding-left:clamp(25px,6vw,110px);padding-right:clamp(25px,6vw,110px)}.nav{height:88px;position:fixed;left:0;right:0;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(25px,6vw,110px);border-bottom:1px solid rgba(255,255,255,.1);transition:background .3s,height .3s}.nav.scrolled{height:72px;background:rgba(10,13,11,.89);backdrop-filter:blur(22px)}.brand{display:flex;align-items:center;height:54px;min-width:176px}.brand img{display:block;max-width:176px;max-height:50px;object-fit:contain}.wordmark-fallback{display:none;font-family:var(--font);font-size:25px;font-weight:800;letter-spacing:-1.8px}.brand-dot,.footer-brand span{color:var(--lime)}.desktop-links{display:flex;gap:37px}.desktop-links a{font-size:12px;letter-spacing:.04em;color:#c8d0c6;transition:color .2s}.desktop-links a:hover{color:var(--lime)}.nav-cta{border:1px solid #9ab07b;border-radius:2px;padding:14px 17px;font-size:12px;font-weight:700;display:flex;gap:32px;align-items:center}.nav-cta span{color:var(--lime)}.nav-cta:hover{background:var(--lime);color:var(--bg)}.nav-cta:hover span{color:var(--bg)}.menu-btn{display:none;background:none;border:0;width:38px;height:38px;padding:9px}.menu-btn span{display:block;height:1px;background:white;margin:7px 0}.mobile-menu{display:none}.hero{min-height:780px;height:min(920px,100svh);position:relative;display:grid;grid-template-columns:57% 43%;align-items:center;isolation:isolate;overflow:hidden}.hero-aura{position:absolute;width:700px;height:700px;top:4%;right:-5%;background:radial-gradient(circle,rgba(132,181,72,.13),transparent 68%);z-index:-1}.hero-gridlines{position:absolute;inset:0;opacity:.23;z-index:-1;background:linear-gradient(90deg,transparent 49.9%,rgba(136,178,109,.17) 50%,transparent 50.1%),repeating-linear-gradient(90deg,transparent 0,transparent 159px,rgba(118,155,97,.1) 160px),repeating-linear-gradient(0deg,transparent 0,transparent 159px,rgba(118,155,97,.09) 160px);mask-image:linear-gradient(to right,transparent,#000)}.hero-content{padding-top:70px;position:relative;z-index:3}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.19em;font-weight:700;color:var(--lime);display:flex;gap:12px;align-items:center}.live-dot{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(194,243,107,.1);animation:pulse 2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(194,243,107,0)}}.hero-title{font:800 clamp(62px,7vw,125px)/1.02 var(--font);letter-spacing:-.085em;margin:33px 0 33px;white-space:nowrap}.hero-title em{font-style:normal;color:var(--lime)}.period{color:white}.hero-desc{max-width:475px;font-size:16px;line-height:1.8;color:#b8c5b8;margin-bottom:35px}.hero-actions{display:flex;align-items:center;gap:31px}.btn{border:1px solid transparent;display:inline-flex;gap:46px;justify-content:space-between;align-items:center;padding:19px 23px;font-size:12px;font-weight:800;letter-spacing:.02em;transition:transform .25s,background .25s,color .25s}.btn:hover{transform:translateY(-4px)}.btn-lime{background:var(--lime);color:#10170c}.btn-lime:hover{background:#e0ffa0}.btn span,.underline-link span{font-size:20px;line-height:0}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid #83937c;padding-bottom:8px}.text-link span{margin-left:15px;color:var(--lime)}.hero-proof{display:flex;align-items:center;gap:15px;margin-top:65px;font-size:9px;line-height:1.8;letter-spacing:.12em;color:#829081}.tiny-cross{font-size:31px;color:var(--lime)}.hero-art{position:relative;min-height:650px;height:75%;align-self:center;display:flex;justify-content:center;align-items:center}.orb{position:absolute;border-radius:50%;filter:blur(3px)}.orb-one{width:470px;height:470px;background:radial-gradient(circle at 40% 40%,rgba(174,229,88,.27),rgba(61,92,50,.12) 42%,transparent 67%);animation:float 8s ease-in-out infinite}.orb-two{width:280px;height:280px;background:radial-gradient(circle,rgba(221,245,151,.16),transparent 70%);transform:translate(70px,40px)}.orbit{position:absolute;border-radius:50%;border:1px solid rgba(205,240,163,.24);transform:rotate(-28deg) scaleY(.54);animation:spin 35s linear infinite}.orbit-one{width:565px;height:565px}.orbit-two{width:740px;height:740px;animation-direction:reverse;opacity:.55}.orbit-one:after{content:'✳';position:absolute;top:72px;left:78px;color:var(--lime);font-size:26px}.art-core{width:380px;height:380px;border:1px solid rgba(215,243,181,.4);border-radius:50%;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle at 40% 32%,#526d36 0,#21341d 30%,#111a10 65%,#0a0d0b 100%);box-shadow:inset -30px -40px 70px #060a06,0 0 100px rgba(171,224,92,.11);animation:float 6s ease-in-out infinite}.core-label,.core-sub{font-size:9px;letter-spacing:.24em;color:#c5e4aa}.core-glyph{font-family:var(--font);font-size:168px;font-weight:500;line-height:1.2;color:var(--lime);text-shadow:0 0 60px rgba(196,244,107,.4)}.art-chip{position:absolute;background:rgba(28,41,25,.78);border:1px solid rgba(211,239,172,.25);padding:15px 18px;font-size:10px;letter-spacing:.035em;backdrop-filter:blur(20px);white-space:nowrap;box-shadow:0 15px 55px #06080670;animation:float 5s ease-in-out infinite}.chip-icon{color:var(--lime);font-size:18px;margin-right:12px}.chip-top{top:15%;left:-1%}.chip-bottom{bottom:17%;left:0%;animation-delay:-2s}.chip-right{right:-6%;top:55%;animation-delay:-1s}.coordinates{position:absolute;bottom:8px;right:2px;left:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:#81917d}.scroll-indicator{position:absolute;left:clamp(25px,6vw,110px);bottom:28px;display:flex;align-items:center;gap:18px;font-size:9px;letter-spacing:.18em;color:#7b897a}.scroll-line{width:70px;height:1px;background:#7b897a}@keyframes float{50%{transform:translateY(-17px)}}@keyframes spin{to{transform:rotate(332deg) scaleY(.54)}}.ticker{height:95px;border-block:1px solid var(--line);display:flex;align-items:center;overflow:hidden;background:#121912}.ticker-track{display:flex;gap:54px;align-items:center;white-space:nowrap;min-width:max-content;animation:marquee 26s linear infinite}.ticker span{font-family:var(--font);font-size:22px;font-weight:800;letter-spacing:-.05em;color:#cfdac7}.ticker b{color:var(--lime);font-size:25px}@keyframes marquee{to{transform:translateX(-50%)}}.intro{padding-top:150px;padding-bottom:145px}.intro-row{display:grid;grid-template-columns:1.45fr 1fr;gap:9%;align-items:end}.display-heading{font:800 clamp(47px,5.4vw,91px)/1.09 var(--font);letter-spacing:-.073em;margin:38px 0}.display-heading span{color:var(--lime)}.intro-aside{max-width:390px;margin-left:auto;padding-bottom:12px}.intro-aside p,.approach-left>p{color:#b8c5b8;font-size:16px;line-height:1.95}.underline-link{display:inline-flex;justify-content:space-between;gap:28px;align-items:center;border-bottom:1px solid var(--lime);padding:14px 0;font-size:12px;font-weight:700}.underline-link span{color:var(--lime)}.values-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:100px;border-top:1px solid var(--line)}.values-row>div{padding:27px 10px 10px 0;display:flex;flex-direction:column;border-right:1px solid var(--line)}.values-row>div:not(:first-child){padding-left:33px}.values-row>div:last-child{border-right:0}.value-num{color:var(--lime);font-size:11px;margin-bottom:35px}.values-row strong{font:700 23px var(--font);letter-spacing:-.04em}.values-row small{color:#879687;margin-top:9px;font-size:12px}.services{background:#121912;padding-top:145px;padding-bottom:155px}.section-top{display:flex;justify-content:space-between;align-items:start}.section-side-note{font-size:13px;line-height:1.7;color:#9bab9b;margin:0}.service-heading{margin-bottom:70px}.service-list{border-top:1px solid var(--line)}.service-item{border-bottom:1px solid var(--line);padding:30px 20px 32px 0;display:grid;grid-template-columns:13% 1fr 60px;position:relative;transition:padding .3s,background .3s}.service-item:hover{padding-left:25px;background:rgba(204,250,122,.035)}.service-index{color:var(--lime);font-size:11px;margin-top:20px}.service-main{display:grid;grid-template-columns:73px 1fr;column-gap:20px}.service-symbol{font-size:45px;color:var(--lime);grid-row:1/4;line-height:1.1}.service-main h3{font:800 clamp(26px,3.6vw,55px)/1.2 var(--font);letter-spacing:-.055em;margin:0}.service-main p{color:#acb9ac;font-size:14px;line-height:1.8;max-width:530px;margin:15px 0 22px}.service-tags{display:flex;flex-wrap:wrap;gap:8px}.service-tags span{font-size:9px;border:1px solid #41513e;padding:8px 10px;color:#98a996;letter-spacing:.06em}.service-arrow{font-size:33px;font-weight:300;color:var(--lime);text-align:right}.video-section{padding-top:146px;padding-bottom:155px}.video-title-row{display:flex;justify-content:space-between;align-items:end;gap:45px}.video-title-row p{max-width:300px;font-size:14px;line-height:1.8;color:#b0bdaf;padding-bottom:25px}.video-frame{height:auto;aspect-ratio:16/8;max-height:670px;position:relative;background:radial-gradient(circle at 75% 35%,#3f6036 0,#182319 37%,#0e1510 72%);border:1px solid #3c4e35;overflow:hidden}.video-frame video{width:100%;height:100%;object-fit:cover;display:block}.video-overlay{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(0deg,rgba(4,11,5,.78),transparent 45%,rgba(4,11,5,.28));padding:32px}.video-overlay-top,.video-overlay-bottom{display:flex;justify-content:space-between;align-items:end;gap:24px}.video-overlay-top span,.video-overlay-bottom>span{color:#c6d9bd;font-size:10px;line-height:1.8;letter-spacing:.11em}.video-overlay-bottom strong{font:700 clamp(22px,3vw,46px)/1.25 var(--font);letter-spacing:-.06em}.play-btn{pointer-events:auto;cursor:pointer;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid rgba(222,255,171,.75);border-radius:50%;width:108px;height:108px;background:rgba(201,242,114,.12);color:var(--lime);font-size:25px;backdrop-filter:blur(12px);transition:background .3s,scale .3s}.play-btn:hover{background:rgba(201,242,114,.27);scale:1.08}.video-note{color:#697c6b;font-size:11px}.video-note code{color:#9ebc82}.approach{padding-top:155px;padding-bottom:175px;background:#151d15}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-top:15px}.approach-left .display-heading{margin-top:25px}.approach-left>p{max-width:415px;margin-bottom:30px}.btn-outline{border-color:#7b956b;color:var(--white);margin-top:10px}.btn-outline:hover{background:var(--lime);color:#0c130a}.steps{padding-top:40px}.step{display:grid;grid-template-columns:45px 1fr 28px;gap:17px;border-top:1px solid #40503d;padding:28px 0 32px}.step>span:first-child{color:var(--lime);font-size:12px;margin-top:9px}.step>span:last-child{color:var(--lime);font-size:25px}.step h3{font:800 29px var(--font);letter-spacing:-.055em;margin:0 0 11px}.step p{color:#a7b8a4;font-size:13px;line-height:1.8;max-width:335px;margin:0}.manifesto{padding-top:160px;padding-bottom:160px;background:var(--lime);color:#14200f}.manifesto-inner>span{letter-spacing:.15em;font-size:10px;font-weight:800}.manifesto h2{font:800 clamp(42px,6.3vw,108px)/1.12 var(--font);letter-spacing:-.077em;margin:45px 0 60px}.manifesto h2 i{font-style:normal;color:#719045}.manifesto-inner>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(20,32,15,.3);padding-top:27px}.manifesto-star{font-size:70px;line-height:1}.manifesto p{font-size:13px;line-height:1.7;font-weight:600}.contact{padding-top:160px;padding-bottom:175px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:35px}.contact-grid .display-heading{margin:0 0 30px}.contact-desc{color:#a8b8a7;font-size:16px;line-height:1.8;max-width:410px;margin-bottom:36px}.contact-panel{border:1px solid #485a42;padding:35px;background:linear-gradient(135deg,#172319,#101710)}.panel-header{display:flex;align-items:center;justify-content:space-between;color:var(--lime);font-size:10px;letter-spacing:.14em;margin-bottom:55px}.contact-detail{display:flex;justify-content:space-between;gap:15px;font:700 clamp(18px,2.5vw,32px) var(--font);letter-spacing:-.055em;padding:20px 0;border-bottom:1px solid #415340;overflow-wrap:anywhere}.contact-detail span{color:var(--lime)}.contact-detail:hover{color:var(--lime)}.contact-location{font-size:10px;letter-spacing:.1em;line-height:1.8;color:#899c85;margin-top:60px}.panel-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #415340;padding-top:28px;margin-top:35px;font-size:9px;letter-spacing:.08em;color:#b4c4b1}.panel-footer span{color:var(--lime);font-size:23px}.footer{background:#101710;padding-top:57px;padding-bottom:30px}.footer-upper,.footer-lower{display:flex;align-items:center;justify-content:space-between}.footer-upper{padding-bottom:70px}.footer-brand{font:800 clamp(48px,9.2vw,151px)/1 var(--font);letter-spacing:-.095em}.back-top{font-size:10px;letter-spacing:.13em;border:1px solid #45553f;padding:15px}.back-top:hover{background:var(--lime);color:#101710}.footer-lower{border-top:1px solid var(--line);padding-top:25px;color:#82927e;font-size:9px;letter-spacing:.11em;gap:15px}.reveal{opacity:0;transform:translateY(35px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:1100px){.hero{grid-template-columns:60% 40%}.hero-title{font-size:clamp(56px,7.7vw,96px)}.hero-art{transform:scale(.78);transform-origin:center}.chip-right{right:-22%}.desktop-links{gap:20px}.display-heading{font-size:clamp(43px,5.2vw,74px)}}@media(max-width:760px){.cursor-glow{display:none}.nav{height:72px}.brand{min-width:0}.brand img{max-width:145px}.wordmark-fallback{font-size:22px}.desktop-links,.nav-cta{display:none}.menu-btn{display:block}.mobile-menu{display:flex;position:fixed;z-index:49;inset:72px 0 auto;background:#121a12;flex-direction:column;padding:15px 25px 30px;visibility:hidden;opacity:0;transform:translateY(-15px);transition:.3s;border-bottom:1px solid #395038}.mobile-menu.open{visibility:visible;opacity:1;transform:none}.mobile-menu a{padding:15px;border-bottom:1px solid #30402f;font-size:19px}.hero{height:auto;min-height:850px;padding-top:125px;padding-bottom:80px;grid-template-columns:1fr;display:block}.hero-title{font-size:clamp(48px,10.9vw,80px);letter-spacing:-.075em;white-space:normal}.hero-desc{font-size:14px}.hero-actions{gap:20px;flex-wrap:wrap}.hero-proof{margin-top:35px}.hero-art{min-height:360px;height:390px;transform:scale(.72);margin:0 -50px;transform-origin:center}.art-core{width:320px;height:320px}.core-glyph{font-size:130px}.orbit-one{width:440px;height:440px}.orbit-two{width:570px;height:570px}.chip-top{left:0;top:7%}.chip-bottom{left:-2%;bottom:10%}.chip-right{right:-6%}.coordinates{display:none}.scroll-indicator{bottom:18px}.ticker{height:75px}.ticker span{font-size:16px}.intro,.services,.video-section,.approach,.contact{padding-top:95px;padding-bottom:100px}.intro-row,.approach-layout,.contact-grid{grid-template-columns:1fr;gap:20px}.display-heading{font-size:clamp(42px,9vw,70px)}.intro-aside{margin:0;max-width:550px}.values-row{margin-top:58px}.values-row strong{font-size:17px}.values-row>div:not(:first-child){padding-left:13px}.values-row small{font-size:10px}.section-side-note{display:none}.service-heading{margin-bottom:40px}.service-item{grid-template-columns:45px 1fr 28px;padding-right:0}.service-main{grid-template-columns:1fr}.service-symbol{grid-row:auto;font-size:30px;margin-bottom:12px}.service-main h3{font-size:29px}.service-main p{font-size:12px}.service-arrow{font-size:22px}.video-title-row{display:block}.video-title-row p{padding-bottom:10px}.video-frame{aspect-ratio:4/3}.video-overlay{padding:19px}.video-overlay-bottom strong{font-size:21px}.video-overlay-bottom>span{font-size:8px;text-align:right}.play-btn{width:77px;height:77px}.approach-layout{gap:40px}.steps{padding-top:0}.manifesto{padding-top:105px;padding-bottom:105px}.manifesto h2{font-size:clamp(38px,9vw,72px)}.contact-panel{margin-top:32px;padding:25px}.footer-brand{font-size:clamp(45px,11vw,85px)}.footer-upper{padding-bottom:45px}.footer-lower{flex-wrap:wrap;font-size:8px}.reveal{transform:translateY(22px)}}@media(max-width:420px){.hero-title{font-size:47px}.hero-art{transform:scale(.58);margin:0 -90px}.hero{min-height:815px}.btn{gap:17px}.text-link{font-size:11px}.service-tags span{font-size:8px}.values-row{grid-template-columns:1fr}.values-row>div,.values-row>div:not(:first-child){padding:17px 0;border-right:0;border-bottom:1px solid var(--line)}.value-num{margin-bottom:12px}.video-overlay-top span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Original Grovera brand artwork */
.brand img{max-width:190px;max-height:54px;width:auto;height:auto}.footer-brand{display:inline-flex;align-items:center}.footer-brand img{width:clamp(215px,34vw,530px);height:auto;display:block}@media(max-width:760px){.brand img{max-width:157px;max-height:47px}.footer-brand img{width:clamp(200px,58vw,350px)}}

/* Multipage additions */
.inner-hero{position:relative;overflow:hidden;padding-top:190px;padding-bottom:85px;min-height:440px}.inner-hero .display-heading{position:relative;font-size:clamp(65px,11vw,154px);margin:24px 0 10px}.inner-lead{position:relative;max-width:660px;color:var(--muted);font-size:clamp(16px,2vw,22px);line-height:1.6}.inner-hero-rule{height:1px;background:var(--line);margin-top:75px}.page-extra,.inner-cta{padding-top:95px;padding-bottom:110px}.page-extra .display-heading,.inner-cta .display-heading{margin:30px 0}.page-copy{max-width:740px;color:var(--muted);font-size:17px;line-height:1.95}.inner-cta{background:var(--bg2)}.inner-cta .btn{margin-top:25px}.home-preview{padding-top:120px;padding-bottom:115px}.footer-upper{position:relative;display:flex;align-items:center;justify-content:center;padding-bottom:50px}.footer-brand img{width:clamp(155px,21vw,270px)!important}.back-top{position:absolute;right:0;top:50%;transform:translateY(-50%)}.desktop-links a[aria-current="page"]{color:var(--lime)}@media(max-width:760px){.inner-hero{padding-top:135px;padding-bottom:55px;min-height:340px}.inner-hero-rule{margin-top:50px}.footer-upper{flex-direction:column;gap:22px}.back-top{position:static;transform:none}.footer-brand img{width:200px!important}.page-extra,.inner-cta{padding-top:75px;padding-bottom:85px}}

/* Payment options — V4 */
.payment-options{padding-top:115px;padding-bottom:125px;background:#172016;border-top:1px solid #364b32}.payment-heading-row{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:65px;margin:25px 0 45px}.payment-heading-row .display-heading{margin:0}.payment-heading-row>p{color:#b6c7b0;line-height:1.85;font-size:15px;max-width:330px}.payment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.payment-card{min-height:245px;padding:31px;background:linear-gradient(150deg,#233224,#131b15);border:1px solid #405640;transition:transform .3s ease,border-color .3s ease}.payment-card:hover{transform:translateY(-6px);border-color:var(--lime)}.payment-number{font-size:10px;letter-spacing:.14em;color:var(--lime);font-weight:700}.payment-card h3{font-size:clamp(24px,2.4vw,34px);letter-spacing:-.045em;margin:42px 0 12px}.payment-card p{font-size:13px;line-height:1.8;color:#b7c8b3;margin:0}.payment-fineprint{max-width:850px;font-size:11px;line-height:1.7;color:#a7b59f;margin:22px 0 25px}.payment-teaser{font-size:13px;line-height:1.7;color:#bfd6a5;max-width:450px;margin:-10px 0 29px}@media(max-width:760px){.payment-options{padding-top:80px;padding-bottom:85px}.payment-heading-row{grid-template-columns:1fr;gap:10px}.payment-grid{grid-template-columns:1fr}.payment-card{min-height:0}.payment-card h3{margin-top:25px}}
/* V6: Booking, FAQ and mobile enhancements */
.booking-open{overflow:hidden}.booking-modal{position:fixed;inset:0;z-index:5000;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}.booking-modal.open{visibility:visible;opacity:1}.booking-shade{position:absolute;inset:0;background:rgba(0,0,0,.79);backdrop-filter:blur(13px)}.booking-dialog{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-46%) scale(.97);display:grid;grid-template-columns:minmax(280px,.85fr) minmax(350px,1.15fr);max-width:940px;width:min(94vw,940px);max-height:min(90dvh,820px);overflow:auto;background:#111a15;border:1px solid #394839;border-radius:22px;box-shadow:0 32px 100px #0009;transition:transform .35s cubic-bezier(.2,.8,.2,1);color:#f6f6f3;outline:none}.booking-modal.open .booking-dialog{transform:translate(-50%,-50%) scale(1)}.booking-close{position:absolute;right:18px;top:16px;background:#28352b;color:#fff;border:1px solid #455446;cursor:pointer;border-radius:50%;width:38px;height:38px;font-size:27px;z-index:2}.booking-sidebar{background:radial-gradient(circle at 0% 80%,#264534 0%,transparent 66%),#0b110e;padding:52px 35px 30px;display:flex;flex-direction:column}.booking-kicker,.booking-overline{font-size:11px;letter-spacing:.15em;color:#b6df96;font-weight:800}.booking-logo{object-fit:contain;object-position:left center;width:150px;height:70px;margin:18px 0 25px}.booking-sidebar h2{font-size:clamp(38px,4vw,62px);line-height:1;letter-spacing:-.055em;margin:0 0 19px}.booking-sidebar h2 em{color:#b8f276;font-style:normal}.booking-sidebar p{color:#b9c7bb;line-height:1.7;font-size:14px}.booking-detail{border-top:1px solid #344137;padding:15px 0;font-size:13px;color:#e6eee4}.booking-footnote{margin-top:auto;padding-top:20px;font-size:12px!important}.booking-main{padding:55px 38px 35px;min-height:475px}.booking-main h3{font-size:28px;letter-spacing:-.035em;margin:10px 0 10px}.booking-subtitle{font-size:13px;line-height:1.6;color:#b5c3b6;margin:0 0 25px}.booking-label{display:block;font-size:12px;font-weight:700;margin:16px 0 7px}.booking-field{background:#1b2920;color:#fff;border:1px solid #425345;padding:12px 14px;border-radius:9px;width:100%;font:inherit;box-sizing:border-box;color-scheme:dark}.booking-field:focus{outline:2px solid #b4e877;outline-offset:2px}.booking-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:19px 0}.booking-slot{background:#203224;color:#e5f4e0;border:1px solid #405c45;border-radius:10px;padding:12px 4px;font:inherit;font-size:13px;cursor:pointer}.booking-slot:hover,.booking-slot:focus-visible{background:#b7ee78;color:#111a12}.booking-status{color:#c9d6c9;font-size:13px;line-height:1.7;grid-column:1/-1}.booking-back{background:none;border:0;color:#c1e69e;padding:0;cursor:pointer;margin:0 0 20px;font:inherit;font-size:13px}.booking-submit{display:block;width:100%;margin-top:24px;background:#c5f47f;color:#122011;border:0;border-radius:10px;padding:16px;font:inherit;font-weight:800;cursor:pointer}.booking-submit:disabled{opacity:.6;cursor:wait}.booking-honeypot{position:absolute;left:-99999px;opacity:0}.booking-success{text-align:center;padding:50px 0}.booking-success-icon{font-size:50px;color:#c1ed83}.faq-section{padding-top:60px;padding-bottom:120px}.faq-list{margin:30px 0 85px;border-top:1px solid #37433a}.faq-item{border-bottom:1px solid #37433a;padding:24px 0}.faq-item summary{font-size:clamp(17px,2vw,24px);font-weight:700;cursor:pointer;list-style:none;display:flex;gap:18px;justify-content:space-between}.faq-item summary:after{content:'+';color:#baf277;font-size:28px}.faq-item[open] summary:after{content:'−'}.faq-item p{max-width:760px;color:#bfc9c0;line-height:1.8;margin:16px 0 0}.faq-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:38px;border:1px solid #40503f;border-radius:20px;background:#18251a}.faq-cta h2{font-size:clamp(24px,3.2vw,40px);margin:14px 0}.faq-cta em{font-style:normal;color:#bff080}.faq-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
@media(max-width:850px){.booking-dialog{grid-template-columns:1fr;max-width:540px}.booking-sidebar{padding:30px 28px 20px}.booking-logo{width:135px;height:45px;margin:12px 0}.booking-sidebar h2{font-size:35px}.booking-sidebar>p:not(.booking-footnote),.booking-detail,.booking-footnote{display:none}.booking-main{padding:25px 28px 32px;min-height:260px}.faq-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){html,body{overflow-x:clip}.booking-dialog{width:100%;max-width:none;border-radius:18px 18px 0 0;top:auto;bottom:0;left:0;transform:translateY(30px)!important;max-height:94dvh}.booking-modal.open .booking-dialog{transform:translateY(0)!important}.booking-sidebar{padding:20px 22px 12px}.booking-sidebar h2{font-size:30px;margin-bottom:5px}.booking-logo{height:34px;margin:8px 0}.booking-main{padding:20px 22px 30px}.booking-main h3{font-size:22px}.booking-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-slot{font-size:12px}.booking-close{right:12px;top:12px}.faq-cta{padding:24px}}
@media(prefers-reduced-motion:reduce){.booking-modal,.booking-dialog{transition:none!important}}


/* V7 — client services, inquiries, recruiting */
@media (min-width:761px) and (max-width:1250px){.desktop-links{gap:clamp(9px,1.4vw,19px)}.desktop-links a{font-size:11px}.brand{min-width:145px}.brand img{max-width:155px}.nav-cta{gap:9px;padding:12px 13px}}
@media (min-width:761px) and (max-width:1000px){.desktop-links{display:none}.nav-cta{margin-left:auto;margin-right:19px}.menu-btn{display:block}.mobile-menu{display:flex;position:fixed;z-index:49;inset:72px 0 auto;background:#121a12;flex-direction:column;padding:15px 25px 30px;visibility:hidden;opacity:0;transform:translateY(-15px);transition:.25s}.mobile-menu.open{opacity:1;visibility:visible;transform:none}.mobile-menu a{padding:14px 0;border-bottom:1px solid #334232}}
.intake-section{padding-top:100px;padding-bottom:125px;background:radial-gradient(circle at 80% 20%,rgba(179,237,98,.055),transparent 45%)}
.intake-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(40px,7vw,115px);align-items:start}
.intake-intro{position:sticky;top:120px;padding-top:16px}
.intake-intro h2,.careers-heading h2{font:800 clamp(38px,4.5vw,72px)/1.12 var(--font);letter-spacing:-.07em;margin:30px 0}
.intake-intro h2 em,.careers-heading h2 em,.support-outro h2 em{font-style:normal;color:var(--lime)}
.intake-intro>p{font-size:16px;color:#b3c3b5;line-height:1.9;max-width:455px}
.intake-links{margin-top:54px;border-top:1px solid var(--line)}
.intake-link{display:flex;flex-direction:column;gap:9px;border-bottom:1px solid var(--line);padding:22px 0;transition:padding .2s}
.intake-link:hover{padding-left:8px}.intake-link span{font-size:11px;color:#839b86;letter-spacing:.05em}.intake-link strong{font:700 clamp(17px,1.7vw,25px) var(--font);letter-spacing:-.035em}
.intake-card{background:linear-gradient(135deg,#172419,#0e1710);border:1px solid #364a38;border-radius:16px;padding:clamp(24px,3vw,47px);box-shadow:0 24px 90px #0003;max-width:760px}
.form-top{display:flex;align-items:center;justify-content:space-between;color:var(--lime);letter-spacing:.16em;font-size:10px;font-weight:800}
.intake-card h3{font:800 clamp(30px,3vw,45px)/1.12 var(--font);letter-spacing:-.056em;margin:25px 0 9px}.form-lede{color:#a9b7aa;line-height:1.8;font-size:14px;margin:0 0 35px}
.grovera-form{display:grid;gap:21px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-field{display:flex;flex-direction:column;gap:10px;min-width:0}.form-field label{color:#dfeddd;font-size:12px;font-weight:700}.form-field label span{color:var(--lime)}.form-field label small{font-weight:400;color:#9cac9e}
.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;padding:15px 14px;background:#0b130d;color:#f1f3ec;border:1px solid #3b5040;border-radius:6px;outline:none;font:400 14px 'DM Sans',sans-serif;transition:border-color .2s,box-shadow .2s}
.form-field input::placeholder,.form-field textarea::placeholder{color:#7f9383}.form-field :is(input,select,textarea):focus{border-color:var(--lime);box-shadow:0 0 0 2px #c7f36b22}.form-field textarea{min-height:136px;resize:vertical;line-height:1.6}.form-field input[type="file"]{background:#172619;cursor:pointer;line-height:1.7}.form-field input[type="file"]::file-selector-button{border:0;background:#c7f36b;color:#11200c;padding:10px 12px;border-radius:4px;margin-right:14px;font:700 12px 'DM Sans',sans-serif;cursor:pointer}.field-hint,.form-consent{color:#9bac9b;font-size:11px;line-height:1.7}.form-consent{border-top:1px solid var(--line);padding-top:18px}.form-submit{border:0;width:100%;justify-content:space-between;cursor:pointer;margin-top:2px;font-size:13px}.form-submit:disabled{opacity:.65;cursor:wait}.form-response{font-size:13px;line-height:1.6;margin:0;min-height:0}.form-response:empty{display:none}.form-response.success{color:#c7f36b;border:1px solid #6f9f52;background:#263c29;padding:14px;border-radius:6px}.form-response.error{color:#ffd4bf;border:1px solid #a35c52;background:#3a211f;padding:14px;border-radius:6px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.intake-end{background:#121b14;padding-top:55px;padding-bottom:70px;border-top:1px solid var(--line)}.intake-end-links{display:flex;flex-wrap:wrap;gap:35px;margin-top:25px}.intake-end-links a{font:700 clamp(14px,1.8vw,21px) var(--font);border-bottom:1px solid #819378;padding-bottom:9px}.intake-end-links a:hover{color:var(--lime)}
.support-steps{display:grid;gap:0;border-top:1px solid var(--line);margin:45px 0 32px}.support-steps>div{display:grid;grid-template-columns:36px 1fr;gap:5px 15px;padding:20px 0;border-bottom:1px solid var(--line)}.support-steps span{color:var(--lime);grid-row:span 2;font-size:12px}.support-steps strong{font:700 16px var(--font)}.support-steps p{grid-column:2;font-size:12px;margin:0;color:#9cac9f}.response-commitment{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;color:#cbe3ba;background:#263829;border:1px solid #527a4b;padding:16px;border-radius:7px;margin:0}.response-dot{width:10px;height:10px;background:var(--lime);box-shadow:0 0 0 4px #c7f36b22;border-radius:50%;flex:none;margin-top:5px}
.support-outro{padding-top:85px;padding-bottom:95px;border-top:1px solid var(--line);background:#101810}.support-outro-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:35px}.support-outro h2{font:800 clamp(28px,4vw,55px) var(--font);letter-spacing:-.06em;max-width:500px;margin:18px 0 0}
.careers-section{padding-top:100px;padding-bottom:125px}.careers-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:48px}.careers-heading h2{margin:25px 0 0}.careers-heading>p{max-width:350px;color:#b9c6b9;line-height:1.85}
.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.role-card{padding:clamp(22px,2.5vw,36px);background:linear-gradient(145deg,#1c2a1c,#101711);border:1px solid #344b37;min-height:420px;display:flex;flex-direction:column;transition:transform .3s,border-color .3s;position:relative;overflow:hidden}.role-card:before{content:'';position:absolute;inset:auto -30% -70% -30%;height:220px;background:radial-gradient(circle,#b6f47d17,transparent 65%);pointer-events:none}.role-card:hover{transform:translateY(-7px);border-color:#a9d875}.role-card-top{display:flex;justify-content:space-between;color:#c7f36b;font-size:10px;letter-spacing:.14em}.role-card-top>span:last-child{font-size:22px}.role-card h3{font:800 clamp(27px,2.65vw,41px)/1.13 var(--font);letter-spacing:-.06em;margin:60px 0 18px}.role-card p{font-size:13px;line-height:1.9;color:#aebdac;margin:0 0 25px}.role-anchor{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:18px;border-top:1px solid var(--line);font-size:12px;font-weight:800}.role-anchor:hover{color:var(--lime)}.role-anchor span{color:var(--lime)}
.career-forms-section{background:#121a13;padding-top:115px;padding-bottom:105px}.career-applications{border-top:1px solid #405340}.career-application{border-bottom:1px solid #405340;scroll-margin-top:90px}.career-application>summary{padding:32px 12px;display:flex;justify-content:space-between;align-items:center;gap:25px;cursor:pointer;list-style:none}.career-application>summary::-webkit-details-marker{display:none}.career-ref{color:var(--lime);font-size:10px;letter-spacing:.15em;font-weight:800}.career-application summary h3{font:800 clamp(24px,3vw,43px) var(--font);letter-spacing:-.06em;margin:10px 0}.career-application summary p{font-size:13px;color:#a7b4a7;margin:0}.career-toggle{font-size:34px;flex:none;color:var(--lime)}.career-application[open] .career-toggle{transform:rotate(45deg)}.career-application-body{padding:5px 10px 48px;max-width:780px}.career-skills{font-size:13px;color:#a9b7aa;line-height:1.8;margin:0 0 30px}.career-skills strong{color:#f0f5eb}.career-application .grovera-form{background:#18241a;border:1px solid #314736;border-radius:12px;padding:clamp(18px,3vw,38px)}.career-note{font-size:12px;line-height:1.7;color:#9cac9e;max-width:760px;margin-top:30px}.careers-end{padding-top:60px;padding-bottom:80px}.careers-end .underline-link{margin-top:15px}
@media(max-width:1050px){.intake-layout{grid-template-columns:1fr;gap:32px}.intake-intro{position:static;max-width:800px}.intake-intro h2{font-size:48px}.intake-links{margin-top:30px}.intake-card{max-width:850px}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-card{min-height:360px}}
@media(max-width:760px){.intake-section{padding-top:65px;padding-bottom:80px}.intake-intro h2,.careers-heading h2{font-size:clamp(39px,8vw,58px)}.intake-intro>p{font-size:14px}.intake-card{padding:24px 20px}.careers-section,.career-forms-section{padding-top:75px;padding-bottom:85px}.careers-heading{display:block}.role-grid{grid-template-columns:1fr}.role-card{min-height:315px}.role-card h3{margin-top:40px}.intake-end-links{gap:25px}.support-outro-inner{display:block}.support-outro .btn{margin-top:27px}}
@media(max-width:520px){.form-grid{grid-template-columns:1fr;gap:20px}.intake-card{border-radius:8px}.career-application>summary{padding:26px 0}.career-application .grovera-form{padding:20px 15px}.role-card{padding:26px}.inner-hero .display-heading{font-size:clamp(48px,10vw,75px)}.careers-heading h2{font-size:39px}}


/* V8: quieter interior page hierarchy; homepage styles unchanged. */
.interior-page .display-heading{font-size:clamp(43px,5vw,82px)}
.interior-page .inner-hero .display-heading{font-size:clamp(58px,9vw,132px)}
.interior-page .intake-intro h2,.interior-page .careers-heading h2{font-size:clamp(36px,4.1vw,66px)}
/* Contact and Client Support start with a calm label and descriptive intro. */
.interior-page .compact-hero{min-height:0;padding-top:165px;padding-bottom:36px}
.compact-hero .page-eyebrow-title{margin:0;font:700 12px/1.5 var(--font);letter-spacing:.18em;color:var(--lime)}
.compact-hero .inner-lead{margin:24px 0 0;font-size:clamp(18px,2.1vw,23px);max-width:690px;color:#c5d3c3}
.compact-hero .inner-hero-rule{margin-top:34px}
.compact-hero + .intake-section{padding-top:74px}
@media(max-width:760px){
  .interior-page .display-heading{font-size:clamp(39px,8.2vw,64px)}
  .interior-page .inner-hero .display-heading{font-size:clamp(43px,9.1vw,68px)}
  .interior-page .intake-intro h2,.interior-page .careers-heading h2{font-size:clamp(35px,7.2vw,52px)}
  .interior-page .compact-hero{min-height:0;padding-top:126px;padding-bottom:20px}
  .compact-hero .inner-lead{font-size:17px;line-height:1.6;margin-top:21px}
  .compact-hero .inner-hero-rule{margin-top:27px}
  .compact-hero + .intake-section{padding-top:46px}
}

/* V9: guaranteed vector icons rather than platform-dependent emoji glyphs */
.ui-icon{width:1em;height:1em;display:inline-block;vertical-align:-.12em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.ui-icon-spark{stroke-width:1.65}.ui-icon-play{fill:currentColor;stroke-width:1.6}
.ticker .ui-icon{width:.8em;height:.8em;vertical-align:middle}
.core-glyph .ui-icon{width:1em;height:1em}
.chip-icon .ui-icon{width:1.05em;height:1.05em}

/* V10 — real Grovera promo video, shot in a vertical format.
   Keep the entire frame visible rather than cropping the speaker on desktop. */
.video-frame {
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:clamp(450px,55vw,660px);
  max-height:none;
  aspect-ratio:auto;
  isolation:isolate;
  background:#0b160f;
}
.video-frame::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:-40px;
  background-image:linear-gradient(rgba(4,18,9,.3),rgba(4,18,9,.46)),url("assets/grovera-video-poster.jpg");
  background-position:center;
  background-size:cover;
  filter:blur(34px) brightness(.48) saturate(.82);
  transform:scale(1.08);
  pointer-events:none;
}
.video-frame video {
  position:relative;
  z-index:1;
  display:block;
  height:100%;
  width:auto;
  max-width:100%;
  aspect-ratio:2/3;
  object-fit:contain;
  background:#07100a;
  box-shadow:0 16px 70px rgba(0,0,0,.55);
}
.video-overlay {z-index:2;transition:opacity .25s ease;}
@media(max-width:760px){
  .video-frame {height:min(125vw,570px);aspect-ratio:auto;}
  .video-frame video {max-width:100%;}
}

/* V11: Subtler service marquee across desktop and mobile. */
.ticker {height:68px;}
.ticker-track {gap:38px;}
.ticker span {font-size:17px;letter-spacing:-.035em;}
.ticker b {font-size:19px;}
.ticker .ui-icon {width:.72em;height:.72em;}
@media(max-width:760px){.ticker {height:56px;}.ticker-track {gap:26px;}.ticker span {font-size:13px;}.ticker b {font-size:16px;}}


/* V12 — controlled hero rhythm: no overlapping scroll prompt or oversized gap. */
@media (min-width: 761px) {
  .hero {
    height: auto;
    min-height: clamp(640px, 78svh, 790px);
    padding-top: 116px;
    padding-bottom: 56px;
    overflow: hidden;
  }
  .hero-content { padding-top: 0; }
  .hero-proof { margin-top: 42px; }
  .hero-art { min-height: 470px; height: 540px; }
  .video-section { padding-top: 68px; }
}
@media (max-width: 760px) {
  .hero {
    height: auto;
    min-height: 0;
    padding-top: 125px;
    padding-bottom: 38px;
  }
  .hero-content { padding-top: 0; }
  .hero-proof { margin-top: 30px; }
  .hero-art { margin-top: 8px; }
  .video-section { padding-top: 46px; }
}



/* V13: cinematic transition + growth animation + founder story */
.section-bridge{position:relative;height:108px;display:flex;align-items:center;justify-content:center;margin-top:-34px;margin-bottom:-22px;z-index:3}
.bridge-glow{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(199,243,107,.16),rgba(199,243,107,.06) 28%,rgba(10,13,11,0) 66%);filter:blur(8px);opacity:.95}
.bridge-line{width:min(540px,72vw);height:1px;background:linear-gradient(90deg,rgba(199,243,107,0),rgba(199,243,107,.7),rgba(199,243,107,0));position:relative}
.bridge-line span{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 8px rgba(199,243,107,.09),0 0 30px rgba(199,243,107,.26);transform:translate(-50%,-50%);animation:bridgePulse 3.2s ease-in-out infinite}
.bridge-chip{position:absolute;bottom:8px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(11,14,12,.72);backdrop-filter:blur(10px);color:#cad5c7;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.bridge-chip .ui-icon{width:13px;height:13px}
.video-section{padding-top:118px}
.hero{min-height:720px;height:min(820px,90svh)}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:140px;background:linear-gradient(180deg,rgba(10,13,11,0),rgba(10,13,11,.85) 64%,var(--bg) 100%);pointer-events:none}
.inner-cta--subtle{padding-top:72px;padding-bottom:84px;border-top:1px solid rgba(255,255,255,.05);background:linear-gradient(180deg,rgba(255,255,255,.01),rgba(255,255,255,0))}
.inner-cta--subtle .section-kicker{opacity:.75}
.inner-cta--subtle .display-heading{font-size:clamp(34px,4.2vw,62px);max-width:700px}
.inner-cta--subtle .btn{margin-top:26px}
.growth-simulation{padding-top:110px;padding-bottom:120px}
.growth-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:46px;align-items:center}
.growth-copy p{max-width:580px}
.growth-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.mini-point{padding:18px 16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.mini-point strong{display:block;font-size:15px;margin-bottom:8px}
.mini-point span{font-size:13px;color:var(--muted);line-height:1.55}
.growth-card{position:relative;padding:24px;border:1px solid rgba(199,243,107,.18);border-radius:30px;background:radial-gradient(circle at 50% 20%,rgba(199,243,107,.12),rgba(16,20,17,.96) 46%),linear-gradient(180deg,#121713,#0f1311);box-shadow:0 34px 80px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden}
.growth-card:before{content:"";position:absolute;inset:auto -12% -40% auto;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(199,243,107,.12),rgba(199,243,107,0) 65%);filter:blur(14px)}
.chart-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#b5beb1;margin-bottom:22px}
.chart-topline b{font-size:11px;color:#edf2e7}
.chart-wrap{position:relative;padding-left:38px}
.axis{display:flex;color:#8b9589;font-size:11px;letter-spacing:.08em}
.axis-y{position:absolute;left:0;top:0;bottom:26px;flex-direction:column;justify-content:space-between}
.axis-x{justify-content:space-between;padding:10px 2px 0 4px}
.growth-chart{width:100%;height:auto;display:block}
.growth-chart .grid line{stroke:rgba(255,255,255,.08);stroke-dasharray:3 7}
.line-path{fill:none;stroke:url(#growthLine);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 12px rgba(199,243,107,.28));stroke-dasharray:600;stroke-dashoffset:600;animation:drawLine 2.3s ease-out forwards}
.area-path{fill:rgba(199,243,107,.12);opacity:0;animation:fadeArea 1s ease .55s forwards}
.chart-dots circle{fill:var(--lime);opacity:0;transform-origin:center;animation:dotIn .45s ease forwards}
.chart-dots circle:nth-child(1){animation-delay:.5s}.chart-dots circle:nth-child(2){animation-delay:.75s}.chart-dots circle:nth-child(3){animation-delay:1s}.chart-dots circle:nth-child(4){animation-delay:1.25s}.chart-dots circle:nth-child(5){animation-delay:1.45s}.chart-dots circle:nth-child(6){animation-delay:1.65s}
.chart-bars rect{fill:rgba(199,243,107,.18);transform-box:fill-box;transform-origin:center bottom;transform:scaleY(0);animation:growBar .75s ease forwards}
.chart-bars rect:nth-child(1){animation-delay:.25s}.chart-bars rect:nth-child(2){animation-delay:.45s}.chart-bars rect:nth-child(3){animation-delay:.65s}.chart-bars rect:nth-child(4){animation-delay:.85s}.chart-bars rect:nth-child(5){animation-delay:1.05s}
.chart-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.chart-metrics div{padding:14px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.015);border-radius:14px}
.chart-metrics small{display:block;color:#95a092;text-transform:uppercase;letter-spacing:.11em;font-size:10px;margin-bottom:8px}
.chart-metrics strong{font-size:17px}
.founder-story{padding-top:96px;padding-bottom:108px}
.founder-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:48px;align-items:center}
.founder-copy p{max-width:620px}
.founder-visual{position:relative;min-height:420px;border:1px solid rgba(199,243,107,.16);border-radius:34px;background:radial-gradient(circle at 50% 28%,rgba(199,243,107,.12),rgba(18,22,18,.98) 46%),linear-gradient(180deg,#131813,#0f1310);overflow:hidden}
.visual-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:50%;border:1px solid rgba(199,243,107,.28);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle,rgba(199,243,107,.17),rgba(199,243,107,.05) 48%,rgba(255,255,255,.02) 100%);box-shadow:0 0 0 16px rgba(199,243,107,.03)}
.visual-core span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#d5decf}
.visual-core strong{font:800 28px/1.05 var(--font-display);letter-spacing:-.03em;max-width:130px}
.orbit-lines{position:absolute;inset:0;width:100%;height:100%}
.orbit-lines ellipse{fill:none;stroke:rgba(199,243,107,.12);stroke-width:1.2}
.orbit-card{position:absolute;display:flex;align-items:flex-start;gap:12px;max-width:250px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(13,16,14,.88);backdrop-filter:blur(10px);box-shadow:0 14px 40px rgba(0,0,0,.28)}
.orbit-card .ui-icon{width:22px;height:22px;flex:none;margin-top:2px}
.orbit-card strong{display:block;font-size:15px;margin-bottom:6px}
.orbit-card small{display:block;color:#93a091;line-height:1.55;font-size:12px}
.orbit-time{left:28px;top:48px;animation:floatOne 6.6s ease-in-out infinite}
.orbit-money{right:22px;top:84px;animation:floatTwo 7.1s ease-in-out infinite}
.orbit-business{left:50%;bottom:28px;transform:translateX(-50%);animation:floatThree 6.9s ease-in-out infinite}
@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes fadeArea{to{opacity:1}}@keyframes dotIn{0%{opacity:0;transform:scale(.35)}100%{opacity:1;transform:scale(1)}}@keyframes growBar{to{transform:scaleY(1)}}@keyframes bridgePulse{0%,100%{transform:translate(-50%,-50%) scale(.9)}50%{transform:translate(-50%,-50%) scale(1.15)}}@keyframes floatOne{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes floatTwo{0%,100%{transform:translateY(0)}50%{transform:translateY(10px)}}@keyframes floatThree{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-10px)}}
@media (max-width:980px){
  .section-bridge{height:92px;margin-top:-14px}
  .bridge-chip{bottom:2px}
  .growth-grid,.founder-grid{grid-template-columns:1fr;gap:32px}
  .growth-points,.chart-metrics{grid-template-columns:1fr}
  .founder-visual{min-height:520px}
  .orbit-time{left:16px;top:18px;max-width:220px}.orbit-money{right:16px;top:104px;max-width:220px}.orbit-business{bottom:18px;max-width:240px}
}
@media (max-width:720px){
  .video-section{padding-top:92px}
  .bridge-line{width:min(82vw,360px)}
  .bridge-chip{font-size:9px;letter-spacing:.12em;padding:7px 10px}
  .hero{min-height:680px;height:auto;padding-bottom:38px}
  .hero:after{height:90px}
  .growth-simulation,.founder-story{padding-top:82px;padding-bottom:88px}
  .growth-card{padding:18px;border-radius:24px}
  .chart-topline{flex-direction:column;align-items:flex-start}
  .chart-wrap{padding-left:26px}
  .axis-y{bottom:20px}
  .founder-visual{min-height:580px;padding-top:12px}
  .visual-core{width:162px;height:162px}
  .visual-core strong{font-size:24px}
  .orbit-card{max-width:calc(100% - 24px)}
  .orbit-time{left:12px;top:18px}.orbit-money{right:12px;top:136px}.orbit-business{left:12px;right:12px;bottom:16px;transform:none}
}


/* V14 refinement: no overlaying copy, no emoji glyphs, softer transitions */
.hero-video-glow{height:72px;position:relative;overflow:hidden;background:radial-gradient(ellipse 40% 60% at 50% 50%,rgba(143,194,93,.10),transparent 80%);pointer-events:none}
.hero-video-glow:after{content:"";position:absolute;left:18%;right:18%;top:50%;height:1px;background:linear-gradient(90deg,transparent,rgba(188,233,134,.35),transparent)}
.video-section--flow{padding-top:46px}
.core-glyph{display:flex;align-items:center;justify-content:center}
.core-glyph .brand-leaves{width:min(90%,150px);height:auto;max-height:160px;object-fit:contain;filter:drop-shadow(0 0 22px rgba(137,212,109,.22));opacity:.92}
.visual-core .founder-leaves{width:80%;height:80%;object-fit:contain;opacity:.72;filter:drop-shadow(0 0 20px rgba(169,237,143,.18)) saturate(.8)}
.founder-visual{isolation:isolate}
.founder-visual .orbit-lines{pointer-events:none;z-index:0}.founder-visual .visual-core{z-index:1}.founder-visual .orbit-card{z-index:2}
.growth-copy>p{color:#b8c5b8;font-size:16px;line-height:1.85}
.chart-disclaimer{color:#859486;font-size:11px;line-height:1.65;margin:13px 0 0}
.growth-chart .line-path,.growth-chart .area-path,.growth-chart .chart-dots circle,.growth-chart .chart-bars rect{animation-play-state:paused!important}
.growth-simulation.is-active .growth-chart .line-path,.growth-simulation.is-active .growth-chart .area-path,.growth-simulation.is-active .growth-chart .chart-dots circle,.growth-simulation.is-active .growth-chart .chart-bars rect{animation-play-state:running!important}
@media(max-width:760px){.hero-video-glow{height:42px}.video-section--flow{padding-top:22px}.core-glyph .brand-leaves{max-width:110px}.visual-core .founder-leaves{width:75%;height:75%}}
@media(prefers-reduced-motion:reduce){.growth-chart .line-path{stroke-dashoffset:0!important;animation:none!important}.growth-chart .area-path,.growth-chart .chart-dots circle{opacity:1!important;animation:none!important}.growth-chart .chart-bars rect{transform:none!important;animation:none!important}.founder-visual .orbit-card{animation:none!important}}

/* V15 minimalist footer social links */
.footer-upper{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.footer-socials{display:flex;align-items:center;justify-content:center;gap:12px}
.footer-socials a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(227,245,221,.19);border-radius:50%;color:#bfcbb9;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}
.footer-socials a:hover,.footer-socials a:focus-visible{color:var(--lime);border-color:rgba(199,243,107,.55);background:rgba(199,243,107,.055);transform:translateY(-2px)}
.footer-socials svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-socials .social-dot{fill:currentColor;stroke:none}
.footer-socials a:last-child svg{fill:currentColor;stroke:none}
@media(max-width:760px){.footer-upper{gap:16px}.footer-socials{gap:11px}.footer-socials a{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.footer-socials a{transition:none}}


/* V16: single-row desktop footer / balanced mobile footer */
.footer-upper{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-content:initial;column-gap:18px;row-gap:12px;min-height:126px;padding-bottom:46px}
.footer-upper>.footer-socials{grid-column:1;grid-row:1;justify-self:start;justify-content:flex-start;align-self:center}
.footer-upper>.footer-brand{grid-column:2;grid-row:1;justify-self:center;line-height:0}
.footer-upper>.back-top{position:static;grid-column:3;grid-row:1;justify-self:end;transform:none;white-space:nowrap}
@media(max-width:760px){
  .footer-upper{grid-template-columns:1fr 1fr;row-gap:18px;padding-bottom:32px}
  .footer-upper>.footer-brand{grid-row:1;grid-column:1/-1;justify-self:center}
  .footer-upper>.footer-socials{grid-row:2;grid-column:1;justify-self:start}
  .footer-upper>.back-top{grid-row:2;grid-column:2;justify-self:end}
  .footer-brand img{width:180px!important}
}
/* More intentional, compact handoff on Services and Our Approach */
body.interior-page:has(.services)>.noise{} /* preserve visual grain */
body.interior-page:has(.services) .inner-hero,
body.interior-page:has(#approach) .inner-hero{min-height:320px;padding-top:145px;padding-bottom:34px}
body.interior-page:has(.services) .inner-hero .display-heading,
body.interior-page:has(#approach) .inner-hero .display-heading{margin-top:22px;margin-bottom:12px}
body.interior-page:has(.services) .inner-hero-rule,
body.interior-page:has(#approach) .inner-hero-rule{margin-top:28px;opacity:.55}
body.interior-page .inner-hero+.services{padding-top:76px}
body.interior-page .inner-hero+#approach{padding-top:76px}
body.interior-page .inner-hero+.services .service-heading{margin-bottom:52px}
@media(max-width:760px){
  body.interior-page:has(.services) .inner-hero,
  body.interior-page:has(#approach) .inner-hero{min-height:0;padding-top:130px;padding-bottom:34px}
  body.interior-page .inner-hero+.services,
  body.interior-page .inner-hero+#approach{padding-top:56px}
}

/* V17: keep the bottom card inside its About illustration on narrow screens.
   Its desktop keyframe uses translateX(-50%), conflicting with mobile left/right. */
@media (max-width:720px) {
 .founder-visual .orbit-business { left:12px; right:12px; bottom:16px; width:auto; max-width:none; min-width:0; transform:none; animation:none; }
 .founder-visual .orbit-card > div { min-width:0; }
 .founder-visual .orbit-card small { overflow-wrap:anywhere; }
}


/* V20: Screenshot-driven iPhone spacing and booking modal refinements.
   Scoped changes preserve every V19 booking/form and other page feature. */

/* The removed hero-proof badge leaves a little breathing room before the art. */
@media (max-width:760px){
  .hero .hero-actions{margin-bottom:8px}
  .hero .hero-art{margin-top:0}
}

/* About page: connect the page heading to "01 / The Bigger Picture". */
.about-page .inner-hero{min-height:0;padding-bottom:32px}
.about-page .inner-hero-rule{margin-top:26px}
.about-page .intro{padding-top:62px}
.about-page .intro .display-heading{margin-top:26px}

/* Homepage: bring the contact CTA closer to the bottom of the brand film. */
body:not(.interior-page) .video-section{padding-bottom:76px}
body:not(.interior-page) .contact{padding-top:82px}

/* In the booking popup, keep all inputs within the visible dialog. */
.booking-dialog,.booking-sidebar,.booking-main,.booking-step,#bookingForm{min-width:0}
.booking-main .booking-field{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box}

@media (max-width:760px){
 .about-page .inner-hero{min-height:0;padding-top:122px;padding-bottom:20px}
 .about-page .inner-hero-rule{margin-top:22px}
 .about-page .intro{padding-top:35px}
 .about-page .intro .display-heading{margin-top:24px}
 body:not(.interior-page) .video-section{padding-bottom:38px}
 body:not(.interior-page) .contact{padding-top:56px}
}

/* Instagram and iOS Safari browsers: centered, bounded dialog with internal scrolling.
   This replaces the V6 edge-to-edge bottom sheet which extended off-screen. */
@media (max-width:560px){
  .booking-dialog,
  .booking-modal.open .booking-dialog{
     box-sizing:border-box;
     position:absolute;
     top:50%;
     bottom:auto;
     left:50%;
     right:auto;
     width:calc(100% - 28px);
     max-width:440px;
     max-height:calc(100vh - 54px);
     max-height:calc(100dvh - 54px);
     max-height:min(82dvh,720px);
     transform:translate(-50%,-50%)!important;
     border-radius:18px;
     overflow-x:hidden;
     overflow-y:auto;
     -webkit-overflow-scrolling:touch;
     overscroll-behavior:contain;
     grid-template-columns:minmax(0,1fr);
  }
  .booking-sidebar{padding:16px 18px 12px}
  .booking-kicker{font-size:9px;letter-spacing:.12em;display:block;max-width:calc(100% - 45px)}
  .booking-sidebar h2{font-size:27px;line-height:1.02;margin:3px 0 4px}
  .booking-logo{width:106px;height:29px;margin:5px 0 2px}
  .booking-close{position:absolute;top:11px;right:11px;left:auto;bottom:auto;width:33px;height:33px;line-height:1;z-index:5}
  .booking-main{padding:16px 18px max(22px,env(safe-area-inset-bottom));min-height:0}
  .booking-main h3{font-size:20px;line-height:1.2;margin:9px 0}
  .booking-subtitle{margin-bottom:12px;font-size:12px;line-height:1.55}
  .booking-label{margin:12px 0 7px}
  .booking-field{font-size:16px!important;min-height:44px;}
  #bookingDate{min-width:0;max-width:100%;-webkit-appearance:auto;appearance:auto}
  .booking-slots{margin:14px 0;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}
  .booking-slot{padding:11px 2px}
  .booking-status{overflow-wrap:anywhere}
}
@media (max-width:360px){
 .booking-dialog,.booking-modal.open .booking-dialog{width:calc(100% - 18px)}
 .booking-main{padding-left:15px;padding-right:15px}
 .booking-sidebar{padding-left:15px;padding-right:15px}
}

/* V22 mobile icon polish: SVG strokes remain monochrome on iOS (never emoji glyphs). */
.grovera-arrow{display:inline-block;width:1em;height:1em;min-width:1em;vertical-align:-.14em;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0} 
