/* V4: Grovia type scale, whitespace, accordion and contact polish.
   Uses font CSS hosted by Google Fonts; binaries are NOT bundled. */
:root{--paper:#f4f2ee;--ink:#0e1011;--muted:#605f5f;--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:116px}
body{font-family:"Geist","Segoe UI",Arial,sans-serif;font-size:18px;line-height:1.4;letter-spacing:-.03em;background:var(--paper);color:#111}
button,select,input,textarea{font-family:"Geist","Segoe UI",Arial,sans-serif}
h1,h2,h3,h4,h5,h6{font-family:"Albert Sans","Segoe UI",Arial,sans-serif;font-weight:400;letter-spacing:-.05em}
.container{max-width:1110px}
.site-header{width:min(925px,calc(100% - 40px));height:65px;background:#ffffffeb}
.brand{font-family:"Albert Sans","Segoe UI",sans-serif;font-weight:600;font-size:20px;letter-spacing:-.052em}
.desktop-nav{gap:21px}
.desktop-nav a{font-size:15px;letter-spacing:-.035em;color:#17191a}
.nav-cta{font-size:14px;min-height:44px;padding-left:17px;gap:9px;margin-left:7px}
.language-control{position:relative;display:flex;align-items:center;margin-left:0}
.language-control #languageSelect{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;overflow:hidden!important}
.language-picker{position:relative}
.language-trigger{display:flex;align-items:center;gap:5px;color:#313334;font-size:12px;padding:8px 4px 8px 7px;border:0;background:transparent;border-radius:22px;white-space:nowrap;transition:background .25s}
.language-trigger:hover,.language-trigger[aria-expanded="true"]{background:#eeeef0}
.language-code{font-weight:550;min-width:19px}
.language-chevron{transition:transform .28s var(--ease)}
.language-trigger[aria-expanded="true"] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;right:0;top:calc(100% + 16px);z-index:1500;min-width:190px;border:1px solid #e8e7e4;border-radius:18px;background:#fff;box-shadow:0 24px 60px #1b1e2530;padding:7px;animation:lang-open .28s var(--ease)}
.language-options[hidden]{display:none!important}
.language-option{border:0;background:transparent;display:flex;width:100%;justify-content:space-between;align-items:center;gap:18px;padding:12px 13px;border-radius:12px;color:#2c2c2c;font-size:14px;text-align:left;transition:background .2s}
.language-option:hover,.language-option[aria-selected="true"]{background:#f1f1f0}.language-option[aria-selected="true"]{font-weight:600}
.language-option span:last-child{color:#8b8d90;font-size:12px}
@keyframes lang-open{from{opacity:0;transform:translateY(-7px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
/* Measured in Grovia archive: Albert Sans hero 56/1.1, section h2 40/1.1, FAQ headings 20/1.3, Geist body 18/1.4. */
.hero-grovia{padding-top:167px;padding-bottom:34px}
.hero-inner{grid-template-columns:1fr 1fr;gap:45px;min-height:470px}
.hero h1{font-family:"Albert Sans","Segoe UI",Arial,sans-serif;font-size:56px!important;font-weight:400!important;line-height:1.1!important;letter-spacing:-.05em!important;max-width:540px;margin-bottom:24px}
.hero-description{font-size:18px;line-height:1.4;letter-spacing:-.03em;color:#605f5f;max-width:450px}
.hero-eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:28px}
.hero-actions{margin-top:38px}
.btn{font-size:15px;letter-spacing:-.025em}
.micro-note{font-size:12px;letter-spacing:-.01em}
.hero-visual{min-height:445px}
.preview-orbit{top:7px}
.float-members{top:0;min-height:295px}
.fc-avatar,.ill-avatar{overflow:hidden;display:inline-block;border:2px solid white;box-shadow:0 1px 4px #1112}
.fc-avatar img,.ill-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.float-card-heading,.ill-label{font-family:"Geist","Segoe UI",sans-serif}
/* Typography, proportions, breathing space */
.section-heading h2,.story-copy h2,.faq-layout h2{font-size:40px!important;line-height:1.1;letter-spacing:-.05em;font-weight:400}
.section-heading>p,.story-copy>p,.faq-layout>div:first-child>p{font-size:18px;line-height:1.4;letter-spacing:-.03em;color:#605f5f}
.section-heading{margin-bottom:45px;gap:33px}
.section-index{font-family:"Geist",sans-serif;font-size:12px;letter-spacing:.09em}
.manifesto{padding:130px 0;background:#fff}
.platform-section{padding:120px 0;background:#f5f3ef}
.feature-card{border-radius:24px;min-height:470px;box-shadow:0 4px 21px #20242d08}
.feature-card h3{font-size:29px;letter-spacing:-.045em;font-weight:400}
.feature-card>p,.friction-card>p{font-size:16px;line-height:1.48;letter-spacing:-.024em;color:#737373}
.feature-glyph{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:#f3f3f8;color:#3a3b49;font-size:0!important}
.lucide-icon{width:23px;height:23px;flex-shrink:0;display:block}
.feature-equipment .equipment-illustration{background:#f1efea;border:1px solid #e8e6df}
.feature-equipment .equipment-illustration img{width:100%;height:230px;object-fit:contain!important;object-position:center!important;background:#f1efea;mix-blend-mode:multiply;filter:none!important}
.feature-illustration{transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.feature-card:hover .feature-illustration{transform:translateY(-3px);box-shadow:0 16px 30px #16171910}
.story-section{padding:138px 0}
.workflow-concept{border-radius:24px;background:#fafaf8}
/* Product-photo catalogue as illustrative concept, never real inventory */
.catalog-preview{padding:0 20px 8px}
.catalog-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:6px 0 14px}
.catalog-head>div{display:grid;gap:3px}
.catalog-head span{font-size:10px;font-weight:600;letter-spacing:.11em;color:#929291}
.catalog-head strong{font-family:"Albert Sans",sans-serif;letter-spacing:-.03em;font-size:21px;font-weight:500;color:#1b1c1d}
.catalog-search{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#fff;border:1px solid #e4e4e1;color:#777}
.catalog-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.catalog-item{background:white;border:1px solid #eae9e6;border-radius:13px;padding:7px 7px 12px;min-width:0;box-shadow:0 6px 16px #00000007;transition:transform .55s var(--ease),box-shadow .55s var(--ease);position:relative}
.catalog-item:hover{transform:translateY(-5px);box-shadow:0 17px 28px #00000018}
.catalog-item>img{display:block;width:100%;height:105px;object-fit:contain;background:#f3f1ee;border-radius:9px;mix-blend-mode:multiply}
.catalog-item>div{margin:11px 2px 0;display:grid;gap:3px}
.catalog-item>div>span{font-size:12px;font-weight:550;letter-spacing:-.01em;line-height:1.3;color:#2a2b2b}
.catalog-item small{font-size:10px;line-height:1.3;color:#939493}
.catalog-arrow{font-size:16px;position:absolute;right:10px;bottom:10px;color:#92939c}
.catalog-disclaimer{font-size:10px;letter-spacing:0;color:#92938f;margin:12px 0 13px;text-align:center}
.loan-step-lines{padding-top:4px}
.workflow-concept-footer{font-size:10px}
/* Grovia-style full-width dark contact with substantial form */
.beta-section{padding:75px 0;background:#f5f3ef}
.beta-section>.container{max-width:1450px;padding-inline:20px}
.beta-panel{min-height:655px;grid-template-columns:.83fr 1.17fr;gap:43px;padding:52px 58px;border-radius:35px;background:radial-gradient(circle at 32% 120%,rgba(122,46,29,.42),transparent 47%),radial-gradient(circle at 71% 48%,rgba(66,91,98,.31),transparent 60%),linear-gradient(120deg,#3d4344 0%,#252b2e 57%,#151b20 100%)}
.beta-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 17% 90%,#89392a55,transparent 40%);pointer-events:none}
.beta-copy{padding:28px 5px 14px 4px;display:flex;flex-direction:column}
.beta-copy h2{font-family:"Albert Sans",sans-serif;font-size:40px!important;letter-spacing:-.05em;line-height:1.1;font-weight:400;margin:24px 0 22px}
.beta-copy p{font-size:18px;line-height:1.4;max-width:430px;color:#e1e3e3d9}
.beta-bullets{margin-top:auto;gap:16px;padding-bottom:18px}
.beta-bullets li{font-size:15px;color:#f1f1f1b8}
.signup-card{background:rgba(11,15,18,.46);border:1px solid #ffffff12;box-shadow:0 25px 60px #0002;color:white;border-radius:24px;padding:34px 38px;backdrop-filter:blur(16px)}
.signup-heading>span{color:#aeb4bb;font-size:11px}
.signup-heading h3{font-size:29px!important;line-height:1.12;font-weight:400!important;letter-spacing:-.035em;color:white}
.signup-heading>p{font-size:14px!important;color:#aeb5ba!important}
.signup-card label{font-size:15px;color:#f9f9f9;letter-spacing:-.025em;font-weight:400;gap:9px}
.signup-card input:not([type=checkbox]),.signup-card select{height:52px;padding:0 17px;border-radius:16px;border:1px solid #ffffff08;background:#ffffff13;color:#fff;font-size:16px;letter-spacing:-.02em;transition:border-color .25s,background .25s}
.signup-card input::placeholder{color:#b5b8b9}
.signup-card select option{color:#202226;background:#fff}
.signup-card input:not([type=checkbox]):focus,.signup-card select:focus{border-color:#a9b5e5;background:#ffffff1e;outline:2px solid #9ba8e955;outline-offset:0}
.signup-card .form-grid{gap:17px}
.signup-card form{display:grid;gap:15px}
.signup-card .consent{font-size:12px;color:#d4d7d8;line-height:1.45}
.signup-card .text-button{color:#fafafa;text-decoration:underline}
.signup-card .submit-btn{background:#fff6aa;color:#181b1d;border-radius:60px;min-height:53px;font-size:16px;font-weight:500;letter-spacing:-.02em}
.signup-card .submit-btn span{width:33px;height:33px;background:#151617;border-radius:50%;color:white;display:grid;place-items:center}
.signup-card .submit-btn:hover{background:#ffec80}
.signup-card .form-legal{color:#d3d5d6;font-size:12px}
.success-panel h3{color:#fff}
.success-panel p{color:#dde1e2}
/* Grovia large FAQ cards, balanced two-column layout */
.faq-section{background:#f5f3ef;padding:120px 0}
.faq-layout{grid-template-columns: .83fr 1.17fr;gap:68px;align-items:start}
.faq-layout h2{font-size:40px!important;letter-spacing:-.05em;max-width:340px;margin:12px 0 24px}
.faq-layout>div:first-child>p{max-width:340px}
.faqs{background:#eeece7;border-radius:30px;padding:10px;display:grid;gap:10px}
.faqs details{border:0!important;background:#fff;border-radius:24px;padding:0!important;overflow:hidden;transition:box-shadow .3s var(--ease)}
.faqs details[open]{box-shadow:0 8px 24px #0000000b}
.faqs summary{font-family:"Albert Sans",sans-serif;font-size:20px!important;font-weight:400;letter-spacing:-.04em;line-height:1.3;padding:31px 30px;align-items:center;gap:22px;min-height:86px}
.faqs summary span{flex:0 0 auto;color:#969998;font-family:"Geist",sans-serif;font-size:28px;font-weight:300;transition:transform .36s var(--ease)}
.faqs details[open] summary span{transform:rotate(45deg)}
.faqs details p{font-family:"Geist",sans-serif;font-size:16px;line-height:1.5;letter-spacing:-.024em;color:#666;padding:0 30px 30px;margin:0;animation:faq-content .45s var(--ease)}
@keyframes faq-content{from{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:none}}
/* Motion tuned for soft, high-fidelity staggered entrances, no forced scroll-wheel hijack */
.motion-ready .reveal{transition:opacity 1.05s var(--ease),transform 1.05s var(--ease),filter 1.05s var(--ease);transition-delay:var(--delay,0ms)}
.motion-ready .reveal:not(.in-view){filter:blur(5px)}
.motion-ready .reveal.in-view{filter:blur(0)}
.catalog-item{will-change:auto}
/* Tablet and mobile retain hierarchy and avoid horizontal overflow */
@media(max-width:1120px){.site-header{width:min(925px,calc(100% - 24px))}.desktop-nav{gap:13px}.nav-cta{margin-left:4px}.hero-inner{gap:14px}.hero h1{font-size:54px!important}}
@media(max-width:900px){.site-header{height:62px}.desktop-nav a{font-size:13px}.nav-cta{font-size:12px}.hero-inner{grid-template-columns:1fr;gap:26px}.hero-copy{max-width:670px}.hero h1{font-size:56px!important}.hero-visual{min-height:455px}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout h2{max-width:none}.beta-panel{padding:32px;gap:20px;grid-template-columns:1fr}.beta-copy{padding:23px 12px}.beta-bullets{margin-top:25px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-item>img{height:125px}}
@media(max-width:660px){body{font-size:16px}.container{padding-inline:19px}.site-header{top:10px;width:calc(100% - 20px);height:59px}.brand{font-size:16px}.desktop-nav{display:none}.nav-cta{font-size:10px;padding:4px 5px 4px 11px;margin-left:auto}.language-trigger{padding:8px 1px;gap:3px}.language-trigger svg:first-child{display:none}.language-options{right:-33px;top:calc(100% + 11px)}.hero-grovia{padding-top:140px}.hero h1{font-size:clamp(42px,10.4vw,54px)!important;line-height:1.08!important}.hero-description{font-size:16px;line-height:1.44}.hero-actions{gap:9px}.hero-actions .btn{font-size:12px}.hero-visual{min-height:378px}.section-heading h2,.story-copy h2,.faq-layout h2{font-size:34px!important;line-height:1.12}.section-heading>p,.story-copy>p,.faq-layout>div:first-child>p{font-size:16px;line-height:1.44}.manifesto,.platform-section,.story-section{padding-block:85px}.feature-card h3{font-size:27px}.feature-card>p{font-size:15px}.feature-equipment .equipment-illustration img{height:220px}.story-section{padding-block:88px}.catalog-preview{padding:0 12px 6px}.catalog-head strong{font-size:18px}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.catalog-item{padding:5px 5px 8px;border-radius:10px}.catalog-item>img{height:87px}.catalog-item>div{margin:7px 1px}.catalog-item>div>span{font-size:10px}.catalog-item small{font-size:8px}.catalog-arrow{display:none}.catalog-disclaimer{font-size:9px}.beta-section>.container{padding-inline:13px}.beta-section{padding:65px 0}.beta-panel{border-radius:26px;padding:20px 15px;gap:10px}.beta-copy h2{font-size:37px!important}.beta-copy p{font-size:16px}.beta-bullets li{font-size:14px}.signup-card{padding:25px 20px;border-radius:19px}.signup-heading h3{font-size:26px!important}.signup-card label{font-size:14px}.signup-card input:not([type=checkbox]),.signup-card select{font-size:15px;height:52px}.signup-card .form-grid{grid-template-columns:1fr;gap:15px}.faq-section{padding:83px 0}.faq-layout{gap:24px}.faqs{padding:7px;gap:7px;border-radius:24px}.faqs details{border-radius:18px}.faqs summary{font-size:17px!important;min-height:75px;padding:24px 19px}.faqs details p{font-size:15px;padding:0 19px 22px}}
@media(max-width:360px){.brand-name{font-size:12px}.nav-cta{font-size:9px}.language-code{font-size:10px}.catalog-item>img{height:65px}.hero h1{font-size:42px!important}}
@media(prefers-reduced-motion:reduce){.language-options,.faqs details p{animation:none!important}.catalog-item,.faqs summary span{transition:none!important}}

@media(min-width:900px){.beta-panel:before{transform:translateY(var(--beta-shift,0px));transition:transform .08s linear}}
