:root {
  --bg: #123a32;
  --bg-soft: #1a4a40;
  --panel: rgba(255,255,255,.065);
  --panel-strong: rgba(255,255,255,.1);
  --line: rgba(255,255,255,.13);
  --text: #f7f7f3;
  --muted: #c0d1cd;
  --muted-2: #91aaa4;
  --accent: #f0a35e;
  --accent-soft: #f8d7a6;
  --mint: #87b9ad;
  --teal: #3c8175;
  --danger: #ff8f7d;
  --success: #8dd2a6;
  --radius: 28px;
  --shadow: 0 30px 90px rgba(0,0,0,.3);
  --container: min(1180px, calc(100vw - 48px));
  --header-h: 78px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 8%,rgba(240,163,94,.12),transparent 28%),radial-gradient(circle at 12% 32%,rgba(99,164,145,.2),transparent 32%),linear-gradient(145deg,rgba(29,83,71,.34),transparent 55%);z-index:-2}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
img,svg{display:block;max-width:100%}
.container{width:var(--container);margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-80px;background:#fff;color:#000;padding:10px 14px;border-radius:10px;z-index:1000}.skip-link:focus{top:16px}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:var(--header-h);background:linear-gradient(to bottom,rgba(13,48,42,.94),rgba(18,58,50,.52),transparent);backdrop-filter:blur(14px);transition:.3s ease}.site-header.is-scrolled{background:rgba(13,48,42,.9);border-bottom:1px solid var(--line)}
.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:.12em;font-size:.84rem}.brand-horizontal-shell{width:208px;height:48px;border-radius:14px;background:#fff;display:grid;place-items:center;flex:0 0 auto;padding:4px 9px;box-shadow:0 8px 24px rgba(0,0,0,.16)}.brand-horizontal-shell img{width:100%;height:100%;object-fit:contain}.brand-logo-shell{width:42px;height:42px;border-radius:13px;background:#fff;display:grid;place-items:center;flex:0 0 auto;padding:5px;box-shadow:0 8px 24px rgba(0,0,0,.16)}.brand-logo-shell img{width:100%;height:100%;object-fit:contain}.brand-logo-shell--compact{width:38px;height:38px;border-radius:12px;padding:4px}.brand>span:last-child{display:block}.brand small{display:block;color:var(--muted-2);font-size:.58rem;letter-spacing:.18em;margin-top:2px}.nav-links{display:flex;align-items:center;gap:26px;color:#d4dfe0;font-size:.9rem}.nav-links a{position:relative}.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--accent);transition:.25s}.nav-links a:hover::after,.nav-links a:focus-visible::after{right:0}.nav-actions{display:flex;align-items:center;gap:10px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);color:var(--text);width:44px;height:44px;border-radius:50%}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid transparent;font-weight:700;transition:.25s ease;cursor:pointer}.btn-primary{background:var(--accent);color:#10100d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(240,163,94,.25)}.btn-secondary{border-color:var(--line);background:rgba(255,255,255,.035)}.btn-secondary:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}.btn-sm{min-height:42px;padding-inline:16px;font-size:.86rem}.arrow{font-size:1.12em;transition:.25s}.btn:hover .arrow{transform:translateX(4px)}
.hero{min-height:100svh;display:grid;align-items:center;position:relative;padding:calc(var(--header-h) + 70px) 0 74px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:68px}.eyebrow{color:var(--accent-soft);font-size:.75rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin-bottom:18px}.hero h1{font-size:clamp(3.3rem,6.3vw,7.2rem);line-height:.91;letter-spacing:-.065em;margin:0;max-width:820px}.hero h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--accent-soft)}.hero-copy>p{font-size:clamp(1.05rem,1.35vw,1.25rem);color:var(--muted);max-width:680px;margin:28px 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-proof{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:44px}.proof-item{padding:15px 14px;border-top:1px solid var(--line)}.proof-item strong{display:block;font-size:.95rem}.proof-item span{font-size:.74rem;color:var(--muted-2)}
.hero-stage{position:relative;min-height:650px}.sun-orbit{position:absolute;width:520px;height:520px;border:1px solid rgba(247,216,155,.19);border-radius:50%;top:40px;right:-40px;animation:rotate 30s linear infinite}.sun-orbit::before,.sun-orbit::after{content:"";position:absolute;border:1px solid rgba(247,216,155,.1);border-radius:50%;inset:54px}.sun-orbit::after{inset:120px}.sun-core{position:absolute;width:190px;height:190px;border-radius:50%;right:120px;top:180px;background:radial-gradient(circle at 35% 30%,#ffe8bd,#f0a35e 47%,#d66d42 78%);box-shadow:0 0 130px rgba(240,163,94,.33)}
.device-stack{position:absolute;inset:70px 0 0 30px;perspective:1100px}.phone{position:absolute;width:285px;height:590px;background:#f2f1ed;border:9px solid #172229;border-radius:42px;right:80px;top:20px;box-shadow:var(--shadow);overflow:hidden;transform:rotateY(-10deg) rotateZ(2deg)}.phone::before{content:"";position:absolute;z-index:4;width:92px;height:22px;left:50%;transform:translateX(-50%);top:7px;background:#172229;border-radius:0 0 16px 16px}.phone-screen{height:100%;background:linear-gradient(150deg,#f7f4ee,#ece8df);color:#132027;padding:42px 15px 18px}.phone-top{display:flex;justify-content:space-between;align-items:center}.phone-logo{font-weight:800;letter-spacing:.12em;font-size:.7rem}.phone-pill{font-size:.58rem;padding:5px 8px;background:#fff;border-radius:999px}.phone-welcome{margin:22px 2px 16px}.phone-welcome small{color:#718087}.phone-welcome h3{font-family:Georgia,serif;font-weight:500;font-size:1.45rem;line-height:1.05;margin:5px 0}.phone-banner{height:118px;border-radius:20px;background:linear-gradient(135deg,#173f3c,#82a99c);padding:18px;color:#fff;position:relative;overflow:hidden}.phone-banner::after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.12);right:-16px;top:-28px}.phone-banner b{font-family:Georgia,serif;font-size:1.15rem}.phone-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.phone-card{background:#fff;border-radius:16px;padding:12px;min-height:78px;box-shadow:0 8px 20px rgba(16,32,39,.06)}.phone-card i{display:grid;width:27px;height:27px;place-items:center;background:#e9efec;border-radius:9px;font-style:normal;font-size:.72rem;margin-bottom:8px}.phone-card b{display:block;font-size:.7rem}.phone-card span{font-size:.55rem;color:#718087}
.admin-card{position:absolute;width:440px;height:318px;left:0;bottom:14px;background:#f6f7f5;color:#172229;border:8px solid #1a252b;border-radius:27px;box-shadow:var(--shadow);transform:rotateY(12deg) rotateZ(-2deg);overflow:hidden}.admin-bar{height:48px;background:#10232c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.admin-bar b{font-size:.66rem;letter-spacing:.1em}.admin-dots{display:flex;gap:4px}.admin-dots i{width:6px;height:6px;background:#a3b2b4;border-radius:50%}.admin-body{display:grid;grid-template-columns:96px 1fr;height:calc(100% - 48px)}.admin-side{padding:16px 10px;background:#e7ecea}.admin-side span{display:block;height:8px;border-radius:6px;background:#b9c6c3;margin-bottom:12px}.admin-side span:first-child{background:#2d6d69}.admin-main{padding:15px}.admin-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.admin-title b{font-size:.82rem}.admin-title span{font-size:.52rem;background:#e8edea;padding:5px 8px;border-radius:999px}.admin-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.kpi{background:#fff;border:1px solid #e0e5e2;border-radius:10px;padding:9px}.kpi small{font-size:.48rem;color:#718087}.kpi strong{font-size:.9rem;display:block}.mini-chart{height:88px;margin-top:9px;background:linear-gradient(to top,rgba(45,109,105,.14),transparent),repeating-linear-gradient(to right,transparent 0 36px,#e5e9e6 37px),repeating-linear-gradient(to top,transparent 0 21px,#e5e9e6 22px);border-radius:10px;position:relative;overflow:hidden}.mini-chart svg{position:absolute;inset:13px 8px 10px}
.scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);font-size:.72rem;color:var(--muted-2);letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:10px}.scroll-cue::before{content:"";width:1px;height:30px;background:linear-gradient(var(--accent),transparent);animation:pulse 1.7s infinite}
.section{padding:120px 0}.section-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;margin-bottom:58px;align-items:end}.section-head h2{font-size:clamp(2.5rem,5vw,5.4rem);line-height:.96;letter-spacing:-.055em;margin:0}.section-head p{margin:0;color:var(--muted);font-size:1.12rem;max-width:660px}.kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:var(--accent-soft);font-weight:800;margin-bottom:14px}.intro-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.triad{display:grid;grid-template-columns:repeat(3,1fr)}.triad-card{padding:52px 42px;border-right:1px solid var(--line);min-height:310px}.triad-card:last-child{border-right:0}.triad-card .num{font-size:.7rem;color:var(--accent);letter-spacing:.15em}.triad-card h3{font-size:1.8rem;line-height:1.05;margin:34px 0 14px}.triad-card p{color:var(--muted);margin:0}.triad-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tag{font-size:.7rem;border:1px solid var(--line);padding:7px 10px;border-radius:999px;color:#d8e1e2}
.story{padding:80px 0 130px}.story-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:80px;align-items:start}.story-steps{padding-top:16vh}.story-step{min-height:82vh;display:flex;flex-direction:column;justify-content:center;opacity:.34;transform:translateY(24px);transition:.45s ease}.story-step.is-active{opacity:1;transform:none}.story-step .step-no{font-size:.68rem;letter-spacing:.18em;color:var(--accent);font-weight:800}.story-step h3{font-size:clamp(2.2rem,4.3vw,4.7rem);line-height:.98;letter-spacing:-.05em;margin:16px 0}.story-step>p{font-size:1.08rem;color:var(--muted);max-width:570px}.feature-list{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:9px}.feature-list li{display:flex;gap:12px;align-items:flex-start;color:#dce4e4}.feature-list li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);margin-top:.52em;flex:0 0 auto}.story-visual{position:sticky;top:calc(var(--header-h) + 28px);height:calc(100vh - var(--header-h) - 56px);min-height:600px;border:1px solid var(--line);border-radius:38px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));overflow:hidden;box-shadow:var(--shadow)}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent)}.visual-label{position:absolute;top:28px;left:30px;z-index:4;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-soft)}.scene{position:absolute;inset:0;padding:78px 34px 34px;opacity:0;transform:scale(.96) translateY(20px);transition:.55s cubic-bezier(.22,.7,.2,1);pointer-events:none}.scene.is-active{opacity:1;transform:none}.scene-title{font-size:clamp(1.65rem,2.3vw,2.4rem);line-height:1.08;margin:0 0 20px;letter-spacing:-.04em}.scene-sub{color:var(--muted);font-size:.88rem;margin-top:-10px;margin-bottom:22px}.mock-window{height:calc(100% - 70px);background:#eef0ec;color:#11232b;border-radius:24px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.25)}.mock-header{height:54px;background:#10232c;color:#fff;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.mock-header b{font-size:.7rem;letter-spacing:.1em}.mock-content{padding:16px;height:calc(100% - 54px);overflow:hidden}.mock-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mock-card{background:#fff;border:1px solid #dde4df;border-radius:14px;padding:13px}.mock-card small{color:#75878b;font-size:.58rem}.mock-card b{display:block;font-size:.8rem;margin-top:4px}.mock-card .metric{font-size:1.35rem}.status{display:inline-flex;align-items:center;gap:5px;font-size:.5rem;border-radius:999px;padding:5px 7px;background:#e8f3eb;color:#247443}.status::before{content:"";width:5px;height:5px;background:#48a56a;border-radius:50%}.mock-list{display:grid;gap:7px;margin-top:10px}.mock-row{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:9px;background:#fff;border:1px solid #dde4df;border-radius:12px}.mock-icon{width:34px;height:34px;border-radius:10px;background:#e3ece8;display:grid;place-items:center;font-size:.78rem}.mock-row b{font-size:.7rem}.mock-row span{font-size:.52rem;color:#75878b}.mock-row strong{font-size:.62rem}.phone-scene{width:250px;height:500px;margin:0 auto;background:#f4f1ea;border:8px solid #1b272c;border-radius:36px;overflow:hidden;box-shadow:0 24px 54px rgba(0,0,0,.28)}.phone-scene .top{height:48px;background:#f4f1ea;padding:19px 14px 0;display:flex;justify-content:space-between;font-size:.54rem}.phone-scene .cover{height:125px;margin:8px 12px;border-radius:18px;background:linear-gradient(135deg,#2d6d69,#b0c9bc);padding:18px;color:#fff}.phone-scene .cover h4{font-family:Georgia,serif;font-size:1.32rem;line-height:1.05;margin:20px 0 0}.phone-scene .inside{padding:0 12px}.mobile-list{display:grid;gap:8px}.mobile-item{background:#fff;border-radius:14px;padding:11px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px}.mobile-item i{width:42px;height:42px;background:#e6ece9;border-radius:12px;display:grid;place-items:center;font-style:normal}.mobile-item b{font-size:.67rem;display:block}.mobile-item span{font-size:.52rem;color:#718087}.mobile-item strong{font-size:.61rem}.score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:14px 0}.score{aspect-ratio:1;border-radius:10px;background:#e9eeeb;display:grid;place-items:center;font-size:.68rem;font-weight:800}.score:nth-child(5){background:#2d6d69;color:#fff}.chart-bars{height:118px;display:flex;align-items:end;gap:7px;padding:10px 6px 0}.chart-bars i{display:block;flex:1;border-radius:6px 6px 0 0;background:linear-gradient(#78aa9d,#2d6d69)}
.group-section{position:relative;padding:130px 0;background:linear-gradient(180deg,transparent,rgba(45,109,105,.12),transparent)}.group-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.group-map{position:relative;min-height:600px;border:1px solid var(--line);border-radius:36px;background:rgba(255,255,255,.03);overflow:hidden}.group-map::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(240,163,94,.12),transparent 30%)}.hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;background:#10232c;border:1px solid rgba(247,216,155,.35);display:grid;place-items:center;text-align:center;box-shadow:0 0 60px rgba(240,163,94,.12);z-index:3}.hub .brand-logo-shell{width:52px;height:52px;margin:0 auto 8px}.hub .brand-logo-shell img{width:100%;height:100%}.hub b{font-size:.7rem;letter-spacing:.12em}.property-node{position:absolute;width:160px;padding:16px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid var(--line);backdrop-filter:blur(10px)}.property-node b{display:block;font-size:.85rem}.property-node span{font-size:.65rem;color:var(--muted)}.property-node::after{content:"";position:absolute;width:150px;height:1px;background:linear-gradient(90deg,var(--line),transparent);transform-origin:left}.node-1{left:50px;top:90px}.node-1::after{left:100%;top:60%;transform:rotate(27deg)}.node-2{right:45px;top:95px}.node-2::after{right:100%;top:60%;transform:rotate(153deg)}.node-3{left:70px;bottom:75px}.node-3::after{left:100%;top:30%;transform:rotate(-27deg)}.node-4{right:60px;bottom:80px}.node-4::after{right:100%;top:30%;transform:rotate(207deg)}.value-list{display:grid;gap:16px;margin-top:34px}.value-item{display:grid;grid-template-columns:38px 1fr;gap:14px;padding-top:16px;border-top:1px solid var(--line)}.value-item i{font-style:normal;color:var(--accent);font-size:.75rem}.value-item h4{margin:0 0 5px;font-size:1rem}.value-item p{margin:0;color:var(--muted);font-size:.9rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sales-card{position:relative;min-height:400px;border:1px solid var(--line);border-radius:28px;padding:28px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.02));overflow:hidden;transition:.3s}.sales-card:hover{transform:translateY(-7px);border-color:rgba(240,163,94,.35)}.sales-card::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(240,163,94,.13),transparent 68%);right:-80px;bottom:-80px}.sales-card .card-no{font-size:.7rem;letter-spacing:.15em;color:var(--accent)}.sales-card h3{font-size:1.65rem;line-height:1.04;margin:74px 0 15px}.sales-card p{color:var(--muted);font-size:.92rem}.sales-card a{position:absolute;left:28px;bottom:28px;font-weight:800;font-size:.84rem;color:var(--accent-soft)}
.architecture{display:grid;grid-template-columns:1fr 1fr;gap:28px}.architecture-copy{padding:52px;border:1px solid var(--line);border-radius:32px;background:rgba(255,255,255,.035)}.architecture-copy h3{font-size:2.3rem;line-height:1.03;margin:0 0 18px}.architecture-copy p{color:var(--muted)}.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tech-item{min-height:150px;padding:22px;border-radius:24px;background:rgba(255,255,255,.055);border:1px solid var(--line)}.tech-item b{display:block;margin-bottom:8px}.tech-item span{color:var(--muted);font-size:.82rem}
.cta-section{padding:130px 0}.cta-box{min-height:560px;border-radius:42px;position:relative;overflow:hidden;display:flex;align-items:end;padding:64px;background:linear-gradient(135deg,#112c31,#1e5148 55%,#ca774c)}.cta-box::before{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(255,255,255,.16);border-radius:50%;right:-70px;top:-180px;box-shadow:0 0 0 80px rgba(255,255,255,.04),0 0 0 160px rgba(255,255,255,.025)}.cta-copy{position:relative;z-index:2;max-width:760px}.cta-copy h2{font-size:clamp(3rem,6vw,6.8rem);line-height:.9;letter-spacing:-.065em;margin:0 0 24px}.cta-copy p{font-size:1.12rem;color:rgba(255,255,255,.76);max-width:620px}.cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.cta-box .btn-primary{background:#fff}.cta-box .btn-secondary{background:rgba(0,0,0,.12);border-color:rgba(255,255,255,.25)}
.site-footer{padding:32px 0 48px;border-top:1px solid var(--line);color:var(--muted)}.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:28px}.footer-links{display:flex;gap:22px;font-size:.78rem}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand .brand-logo-shell{width:38px;height:38px;border-radius:11px;padding:4px;box-shadow:none}.footer-brand .brand-logo-shell img{width:100%;height:100%}.footer-brand b{color:#fff;font-size:.82rem;letter-spacing:.11em}.footer-brand small{display:block;font-size:.65rem}
.progress-rail{position:fixed;z-index:90;right:18px;top:50%;transform:translateY(-50%);height:180px;width:2px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden}.progress-rail span{display:block;width:100%;height:0;background:linear-gradient(var(--accent-soft),var(--accent));transition:height .1s linear}
.page-hero{min-height:72svh;padding:calc(var(--header-h) + 100px) 0 90px;display:flex;align-items:end;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-160px;top:-150px;border:1px solid rgba(247,216,155,.14);box-shadow:0 0 0 90px rgba(247,216,155,.025),0 0 0 180px rgba(247,216,155,.018)}.page-hero h1{font-size:clamp(3.6rem,7vw,7.6rem);line-height:.91;letter-spacing:-.065em;max-width:1000px;margin:0 0 24px}.page-hero p{max-width:740px;color:var(--muted);font-size:1.15rem}.breadcrumb{display:flex;gap:10px;color:var(--muted-2);font-size:.78rem;margin-bottom:34px}.breadcrumb span{color:var(--accent-soft)}.flow-section{padding:110px 0}.flow{display:grid;grid-template-columns:repeat(7,auto);align-items:center;justify-content:center;gap:12px;margin:60px 0}.flow-node{width:155px;min-height:140px;border:1px solid var(--line);border-radius:23px;padding:20px;background:rgba(255,255,255,.05);display:flex;flex-direction:column;justify-content:center;text-align:center}.flow-node b{font-size:.92rem}.flow-node span{font-size:.67rem;color:var(--muted);margin-top:7px}.flow-arrow{color:var(--accent);font-size:1.4rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.detail-card{border:1px solid var(--line);border-radius:28px;padding:34px;background:rgba(255,255,255,.035);min-height:260px}.detail-card .icon{width:46px;height:46px;border-radius:15px;background:rgba(240,163,94,.12);display:grid;place-items:center;color:var(--accent-soft);margin-bottom:38px}.detail-card h3{font-size:1.4rem;margin:0 0 12px}.detail-card p{color:var(--muted);margin:0}.notice{border-left:2px solid var(--accent);padding:20px 24px;background:rgba(240,163,94,.06);color:#dae4e3;border-radius:0 18px 18px 0;margin-top:34px}.ops-hero{background:linear-gradient(180deg,rgba(45,109,105,.08),transparent)}.room-board{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:35px}.room{aspect-ratio:1;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center}.room b{font-size:.82rem}.room span{font-size:.55rem;color:var(--muted)}.room.clean{background:rgba(91,177,119,.14);border-color:rgba(91,177,119,.25)}.room.dirty{background:rgba(220,100,91,.12);border-color:rgba(220,100,91,.24)}.room.attention{background:rgba(240,163,94,.13);border-color:rgba(240,163,94,.28)}
@keyframes rotate{to{transform:rotate(360deg)}}@keyframes pulse{0%,100%{opacity:.35;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}
@media (max-width:1050px){.nav-links{display:none;position:fixed;left:24px;right:24px;top:76px;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid var(--line);border-radius:22px;background:rgba(13,48,42,.97)}.nav-links.is-open{display:flex}.menu-toggle{display:grid;place-items:center}.nav-actions .btn{display:none}.hero-grid,.group-grid,.architecture{grid-template-columns:1fr}.hero{padding-top:140px}.hero-stage{min-height:630px;max-width:680px;width:100%;margin:auto}.section-head{grid-template-columns:1fr;gap:22px}.story-layout{grid-template-columns:1fr}.story-visual{display:none}.story-steps{padding-top:0}.story-step{min-height:auto;padding:78px 0;opacity:1;transform:none;border-bottom:1px solid var(--line)}.story-step::after{display:none}.triad{grid-template-columns:1fr}.triad-card{border-right:0;border-bottom:1px solid var(--line)}.triad-card:last-child{border-bottom:0}.cards{grid-template-columns:1fr 1fr}.group-map{min-height:560px}.flow{grid-template-columns:1fr;justify-items:center}.flow-arrow{transform:rotate(90deg)}.progress-rail{display:none}}
@media (max-width:720px){.brand-horizontal-shell{width:170px;height:42px;border-radius:12px;padding:3px 7px}:root{--container:min(100% - 32px,1180px);--header-h:70px}.site-header{height:var(--header-h)}.brand small{display:none}.hero h1{font-size:clamp(3.15rem,16vw,5rem)}.hero-grid{gap:36px}.hero-proof{grid-template-columns:1fr 1fr}.hero-stage{min-height:485px}.sun-orbit{width:390px;height:390px;right:-100px}.sun-core{width:145px;height:145px;right:70px;top:130px}.phone{width:205px;height:420px;right:8px;top:8px;border-width:7px;border-radius:32px}.phone-screen{padding:33px 10px 12px}.phone-welcome{margin:10px 0}.phone-welcome h3{font-size:1rem}.phone-banner{height:82px;padding:12px}.phone-banner b{font-size:.83rem}.phone-grid{gap:5px}.phone-card{min-height:58px;padding:7px}.phone-card i{width:20px;height:20px;margin-bottom:4px}.admin-card{width:300px;height:220px;left:0;bottom:4px;border-width:6px}.admin-bar{height:34px}.admin-body{grid-template-columns:63px 1fr}.admin-main{padding:8px}.admin-side{padding:10px 7px}.admin-kpis{gap:4px}.kpi{padding:5px}.mini-chart{height:55px}.section{padding:82px 0}.section-head h2{font-size:2.7rem}.triad-card{padding:38px 10px}.story{padding-top:20px}.story-step{padding:62px 0}.story-step h3{font-size:2.55rem}.story-step::after{display:none}.group-section{padding:90px 0}.group-map{min-height:470px}.hub{width:112px;height:112px}.property-node{width:120px;padding:11px}.property-node::after{width:72px}.node-1{left:12px;top:52px}.node-2{right:12px;top:56px}.node-3{left:18px;bottom:50px}.node-4{right:18px;bottom:52px}.cards{grid-template-columns:1fr}.sales-card{min-height:330px}.architecture-copy{padding:32px 24px}.tech-grid{grid-template-columns:1fr}.cta-box{min-height:520px;padding:34px 24px;border-radius:30px}.cta-copy h2{font-size:3.4rem}.footer-grid{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}.page-hero{min-height:78svh;padding-bottom:60px}.page-hero h1{font-size:3.65rem}.detail-grid{grid-template-columns:1fr}.detail-card{padding:27px}.room-board{grid-template-columns:repeat(4,1fr)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}


/* Phase 1 — conversion architecture and management-focused product pages */
.anchor-offset{display:block;position:relative;top:-100px;visibility:hidden}
.compact-head{margin-bottom:42px}
.solution-nav-section{background:linear-gradient(180deg,rgba(255,255,255,.018),transparent);border-bottom:1px solid var(--line)}
.solution-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.solution-card{min-height:500px;padding:34px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(155deg,rgba(255,255,255,.07),rgba(255,255,255,.018));display:flex;flex-direction:column;transition:.3s ease;position:relative;overflow:hidden}
.solution-card::after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-110px;bottom:-120px;background:radial-gradient(circle,rgba(240,163,94,.13),transparent 70%)}
.solution-card:hover{transform:translateY(-6px);border-color:rgba(240,163,94,.34)}
.solution-card--featured{background:linear-gradient(155deg,rgba(45,109,105,.34),rgba(255,255,255,.025))}
.solution-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.solution-index{color:var(--accent);font-size:.74rem;letter-spacing:.16em}.solution-badge{font-size:.67rem;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}
.solution-card h3{font-size:2rem;line-height:1;margin:55px 0 16px}.solution-card p{color:var(--muted);margin:0}.solution-card ul{padding:0;margin:25px 0 30px;list-style:none;display:grid;gap:10px}.solution-card li{position:relative;padding-left:19px;font-size:.86rem;color:#dce5e4}.solution-card li::before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.solution-actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;z-index:2}.solution-actions a:first-child{color:var(--accent-soft);font-weight:800}.solution-actions a:last-child{font-size:.8rem;border-bottom:1px solid var(--line)}
.decision-section{border-bottom:1px solid var(--line)}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.role-card{border:1px solid var(--line);border-radius:28px;padding:32px;background:rgba(255,255,255,.035);min-height:310px}.role-card>span{display:inline-flex;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);margin-bottom:54px}.role-card h3{font-size:1.6rem;line-height:1.06;margin:0 0 15px}.role-card p{color:var(--muted);margin:0}
.inline-conversion{padding:72px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(110deg,rgba(45,109,105,.18),rgba(240,163,94,.08))}.inline-conversion-grid,.decision-cta-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:center}.inline-conversion h2,.decision-cta h2{font-size:clamp(2.4rem,4.4vw,4.7rem);line-height:.96;letter-spacing:-.05em;margin:0 0 18px}.inline-conversion p,.decision-cta p{color:var(--muted);max-width:700px}.inline-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.text-link{color:var(--accent-soft);font-weight:700;border-bottom:1px solid rgba(248,215,166,.3);padding-bottom:3px}
.implementation-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.implementation-step{min-height:330px;border:1px solid var(--line);border-radius:26px;padding:28px;background:rgba(255,255,255,.035)}.implementation-step>span{font-size:.72rem;color:var(--accent);letter-spacing:.16em}.implementation-step h3{font-size:1.45rem;line-height:1.05;margin:72px 0 14px}.implementation-step p{color:var(--muted);font-size:.9rem}.implementation-note{margin-top:18px;padding:22px 26px;border-left:2px solid var(--accent);border-radius:0 18px 18px 0;background:rgba(240,163,94,.06);display:flex;gap:16px;align-items:flex-start}.implementation-note strong{color:var(--accent-soft);white-space:nowrap}.implementation-note span{color:var(--muted)}
.conversion-section{padding:130px 0;background:linear-gradient(180deg,transparent,rgba(45,109,105,.12));border-top:1px solid var(--line)}.conversion-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:start}.conversion-copy{position:sticky;top:120px}.conversion-copy h2{font-size:clamp(3rem,5.3vw,5.7rem);line-height:.92;letter-spacing:-.06em;margin:0 0 26px}.conversion-copy>p{color:var(--muted);font-size:1.08rem;max-width:600px}.demo-expectations{margin:40px 0;display:grid;gap:16px}.demo-expectations>div{display:grid;grid-template-columns:36px 1fr;gap:14px;padding-top:16px;border-top:1px solid var(--line)}.demo-expectations span{color:var(--accent);font-size:.72rem}.demo-expectations p{margin:0;color:var(--muted);font-size:.9rem}.demo-expectations b{color:#fff}.company-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);max-width:380px}.company-card img{width:46px;height:46px;background:#fff;border-radius:13px;padding:5px}.company-card small,.company-card span{display:block;color:var(--muted);font-size:.72rem}.company-card b{display:block;font-size:1rem}
.lead-panel{border:1px solid var(--line);border-radius:32px;background:rgba(255,255,255,.055);box-shadow:var(--shadow);overflow:hidden}.form-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.form-tab{border:0;background:transparent;color:var(--muted);min-height:64px;padding:0 20px;font-weight:750;cursor:pointer}.form-tab.is-active{color:#fff;background:rgba(255,255,255,.055);box-shadow:inset 0 -2px var(--accent)}.form-panel{padding:34px}.lead-form{display:grid;gap:18px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lead-form label>span,.module-fieldset legend{display:block;font-size:.76rem;font-weight:700;color:#dce5e4;margin-bottom:7px}.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:rgba(8,35,30,.76);color:#fff;padding:13px 14px;outline:none;transition:.2s}.lead-form input,.lead-form select{min-height:49px}.lead-form textarea{resize:vertical;min-height:110px}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:rgba(240,163,94,.6);box-shadow:0 0 0 3px rgba(240,163,94,.08)}.lead-form input[aria-invalid="true"],.lead-form select[aria-invalid="true"],.lead-form textarea[aria-invalid="true"]{border-color:var(--danger)}.lead-form select option{color:#111}.module-fieldset{border:0;padding:0;margin:0}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-card{display:flex!important;align-items:center;gap:11px;border:1px solid var(--line);border-radius:15px;padding:13px;cursor:pointer;background:rgba(8,35,30,.52)}.check-card:has(input:checked){border-color:rgba(240,163,94,.55);background:rgba(240,163,94,.08)}.check-card input{width:18px;height:18px;min-height:0;accent-color:var(--accent);flex:0 0 auto}.check-card span{margin:0!important}.check-card b,.check-card small{display:block}.check-card b{font-size:.82rem}.check-card small{color:var(--muted);font-size:.67rem}.consent-row{display:grid!important;grid-template-columns:18px 1fr;gap:11px;align-items:start}.consent-row input{width:18px;height:18px;min-height:0;margin-top:3px;accent-color:var(--accent)}.consent-row span{font-size:.72rem!important;font-weight:500!important;color:var(--muted)!important;margin:0!important}.btn-full{width:100%;min-height:54px}.form-status{display:none;margin:0;padding:13px 15px;border-radius:13px;font-size:.8rem}.form-status.is-visible{display:block}.form-status.is-error{background:rgba(255,143,125,.1);color:#ffc5bc;border:1px solid rgba(255,143,125,.25)}.form-status.is-info{background:rgba(141,210,166,.09);color:#c8f3d7;border:1px solid rgba(141,210,166,.22)}
.floating-demo{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:12px;background:var(--accent);color:#111;padding:13px 15px 13px 19px;border-radius:999px;font-size:.82rem;font-weight:800;box-shadow:0 18px 45px rgba(0,0,0,.34);transition:.25s}.floating-demo b{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.42);display:grid;place-items:center}.floating-demo:hover{transform:translateY(-3px)}
.page-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.problem-section{background:rgba(255,255,255,.018);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pain-grid article{border-top:1px solid var(--line);padding:26px 8px 10px;min-height:250px}.pain-grid span,.process-grid span{color:var(--accent);font-size:.73rem;letter-spacing:.14em}.pain-grid h3{font-size:1.7rem;margin:55px 0 12px}.pain-grid p{color:var(--muted)}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.process-grid article{min-height:300px;border:1px solid var(--line);border-radius:24px;padding:24px;background:rgba(255,255,255,.035)}.process-grid h3{font-size:1.3rem;margin:68px 0 12px}.process-grid p{color:var(--muted);font-size:.86rem}.role-value-section{background:linear-gradient(180deg,rgba(45,109,105,.08),transparent)}.decision-cta{padding:90px 0;border-top:1px solid var(--line);background:linear-gradient(110deg,rgba(45,109,105,.2),rgba(240,163,94,.07))}.status-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:20px;color:var(--muted);font-size:.78rem}.status-legend span{display:flex;align-items:center;gap:8px}.status-legend i{width:10px;height:10px;border-radius:50%}.legend-clean{background:var(--success)}.legend-dirty{background:var(--danger)}.legend-attention{background:var(--accent)}
@media (max-width:1050px){.solution-selector,.role-grid{grid-template-columns:1fr}.solution-card{min-height:auto}.inline-conversion-grid,.decision-cta-grid,.conversion-grid{grid-template-columns:1fr}.conversion-copy{position:static}.implementation-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.pain-grid{grid-template-columns:1fr}.pain-grid article{min-height:auto}.floating-demo span{display:none}.floating-demo{padding:11px}.floating-demo b{width:34px;height:34px}}
@media (max-width:720px){.solution-card{padding:26px}.solution-card h3{margin-top:42px}.role-card{padding:26px;min-height:auto}.role-card>span{margin-bottom:40px}.inline-conversion{padding:58px 0}.implementation-grid,.process-grid{grid-template-columns:1fr}.implementation-step,.process-grid article{min-height:auto}.implementation-step h3,.process-grid h3{margin-top:45px}.implementation-note{flex-direction:column}.implementation-note strong{white-space:normal}.conversion-section{padding:90px 0}.conversion-grid{gap:42px}.lead-panel{border-radius:24px}.form-panel{padding:24px 18px}.field-grid,.check-grid{grid-template-columns:1fr}.form-tabs{grid-template-columns:1fr}.form-tab{min-height:52px}.conversion-copy h2{font-size:3.3rem}.page-hero-actions .btn{width:100%}.decision-cta{padding:70px 0}.room-board{grid-template-columns:repeat(3,1fr)}.floating-demo{right:15px;bottom:15px}}

/* Floating CTA appears only after the visitor has moved beyond the opening hero. */
.floating-demo{opacity:0;pointer-events:none;transform:translateY(14px)}
.floating-demo.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.floating-demo.is-visible:hover{transform:translateY(-3px)}

/* Phase 2: production forms, go-to-top control and error page */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.lead-form .btn[disabled]{opacity:.65;cursor:wait;transform:none;box-shadow:none}
.form-status.is-success{display:block;background:rgba(141,210,166,.11);color:#d1f5de;border:1px solid rgba(141,210,166,.28)}
.go-top{position:fixed;right:24px;bottom:92px;z-index:79;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(17,58,50,.94);color:#fff;display:grid;place-items:center;font-size:1.2rem;cursor:pointer;box-shadow:0 14px 35px rgba(0,0,0,.26);opacity:0;pointer-events:none;transform:translateY(12px);transition:.24s ease;backdrop-filter:blur(12px)}
.go-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.go-top:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px)}
.error-page{min-height:100svh;display:grid;place-content:center;text-align:center;padding:30px}.error-page img{width:76px;height:76px;margin:0 auto 20px;background:#fff;border-radius:22px;padding:8px}.error-page>span{color:var(--accent);font-size:.75rem;letter-spacing:.2em}.error-page h1{font-size:clamp(2.4rem,7vw,5rem);line-height:1;margin:12px 0}.error-page p{color:var(--muted);margin:0 auto 24px}
@media(max-width:720px){.go-top{right:15px;bottom:78px;width:42px;height:42px}}

/* Phase 2.1 — market positioning */
.market-positioning{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(240,163,94,.035),rgba(45,109,105,.055));border-bottom:1px solid var(--line)}
.market-positioning::before{content:"";position:absolute;right:-240px;top:-240px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(240,163,94,.11),transparent 68%);pointer-events:none}
.positioning-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;align-items:stretch}
.positioning-statement{border:1px solid rgba(240,163,94,.28);border-radius:34px;padding:46px;background:linear-gradient(145deg,rgba(240,163,94,.12),rgba(255,255,255,.025));min-height:520px;display:flex;flex-direction:column}
.positioning-statement>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:800}
.positioning-statement h3{font-size:clamp(2rem,3.4vw,3.75rem);line-height:1;letter-spacing:-.045em;margin:70px 0 22px}
.positioning-statement p{color:var(--muted);font-size:1.04rem;max-width:690px;margin:0}
.positioning-statement strong{margin-top:auto;padding-top:36px;color:#f6e1ca;font-size:1rem;line-height:1.55;border-top:1px solid rgba(255,255,255,.1)}
.positioning-points{display:grid;gap:14px}
.positioning-points article{border:1px solid var(--line);border-radius:28px;padding:30px;background:rgba(255,255,255,.035);display:grid;grid-template-columns:46px 1fr;gap:20px;align-items:start}
.positioning-points i{font-style:normal;color:var(--accent);font-size:.72rem;letter-spacing:.14em;padding-top:5px}
.positioning-points h3{font-size:1.4rem;line-height:1.08;margin:0 0 10px}
.positioning-points p{color:var(--muted);margin:0;font-size:.94rem}
@media (max-width:1050px){.positioning-grid{grid-template-columns:1fr}.positioning-statement{min-height:460px}}
@media (max-width:720px){.positioning-statement{padding:30px 24px;min-height:auto}.positioning-statement h3{margin:48px 0 20px}.positioning-statement strong{margin-top:42px}.positioning-points article{padding:24px 20px;grid-template-columns:34px 1fr;gap:12px}}


/* Phase 3 — real appointment booking and lighter pine-green visual system */
.appointment-selection{display:grid;grid-template-columns:.72fr 1.28fr;gap:14px;align-items:start}
.slot-field{min-width:0}.field-label{display:block;font-size:.76rem;font-weight:700;color:#e1ece8;margin-bottom:7px}
.slot-picker-status{min-height:49px;border:1px dashed rgba(255,255,255,.18);border-radius:14px;padding:13px 14px;color:var(--muted);background:rgba(8,35,30,.44);font-size:.78rem;display:flex;align-items:center}
.slot-picker-status.has-options{min-height:auto;border:0;background:transparent;padding:0 0 8px;color:var(--muted-2)}
.slot-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.slot-option{min-width:0;border:1px solid var(--line);border-radius:14px;background:rgba(8,35,30,.62);color:var(--text);padding:12px;text-align:left;cursor:pointer;transition:.2s ease;display:flex;flex-direction:column;align-items:flex-start}
.slot-option:hover{border-color:rgba(240,163,94,.5);transform:translateY(-1px)}
.slot-option.is-selected{border-color:var(--accent);background:rgba(240,163,94,.13);box-shadow:0 0 0 2px rgba(240,163,94,.08)}
.slot-option b{font-size:.88rem}.slot-option span{font-size:.69rem;color:var(--accent-soft);margin-top:2px}.slot-option small{font-size:.62rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;margin-top:3px}
input[name="appointment_slot_id"][aria-invalid="true"]+.slot-picker-status,.slot-field:has(input[aria-invalid="true"]){outline-color:var(--danger)}
.form-status.is-success{display:grid;gap:8px}.form-status.is-success>strong{color:#e5f8ec}.booking-success-details{display:block;color:#c8ead6}.booking-success-actions{display:flex;flex-wrap:wrap;gap:12px}.booking-success-actions a{font-weight:800;color:var(--accent-soft);border-bottom:1px solid rgba(248,215,166,.35)}
.booking-manage-main{min-height:100svh;padding-top:var(--header-h)}.booking-manage-section{padding:90px 0 110px}.booking-manage-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}
.booking-summary-card,.booking-actions-card{border:1px solid var(--line);border-radius:32px;padding:38px;background:rgba(255,255,255,.06);box-shadow:var(--shadow)}
.booking-summary-card{position:sticky;top:110px}.booking-summary-card h1{font-size:clamp(2.6rem,5vw,5rem);line-height:.94;letter-spacing:-.055em;margin:0 0 24px}.booking-summary-card>p,.booking-actions-card>p{color:var(--muted)}
.booking-actions-card h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1;letter-spacing:-.045em;margin:0 0 18px}.booking-details{display:grid;gap:0;margin:34px 0}.booking-details>div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:14px 0;border-top:1px solid var(--line)}.booking-details dt{color:var(--muted);font-size:.75rem}.booking-details dd{margin:0;font-weight:750}
.calendar-actions{display:flex;flex-wrap:wrap;gap:10px}.public-flash{padding:13px 15px;border-radius:14px;margin:18px 0}.public-flash.success{background:rgba(141,210,166,.12);color:#d6f5e0;border:1px solid rgba(141,210,166,.28)}.public-flash.error{background:rgba(255,143,125,.1);color:#ffd0c9;border:1px solid rgba(255,143,125,.25)}
.manage-slot-groups{display:grid;gap:20px;max-height:560px;overflow:auto;padding-right:6px;margin:28px 0}.manage-slot-groups section{border-top:1px solid var(--line);padding-top:14px}.manage-slot-groups h3{font-size:.85rem;color:var(--accent-soft);margin:0 0 10px}.reschedule-form{display:grid}.cancel-booking-form{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.text-danger-button{border:0;background:transparent;color:#ffc1b8;font-weight:800;padding:0;cursor:pointer}.text-danger-button:hover{text-decoration:underline}
@media(max-width:900px){.appointment-selection,.booking-manage-grid{grid-template-columns:1fr}.booking-summary-card{position:static}.booking-manage-section{padding-top:60px}}
@media(max-width:720px){.slot-options{grid-template-columns:1fr}.booking-summary-card,.booking-actions-card{padding:26px 20px;border-radius:24px}.booking-details>div{grid-template-columns:1fr;gap:4px}.calendar-actions .btn{width:100%}}

/* Phase 4 — white public cards and CityStore contact details */
:root{
  --card-bg:#ffffff;
  --card-bg-soft:#f4f7f5;
  --card-text:#17372f;
  --card-muted:#61726d;
  --card-line:rgba(23,55,47,.13);
  --card-accent:#a65320;
  --card-shadow:0 20px 55px rgba(4,31,25,.16);
}

/* Public content cards deliberately contrast with the pine-green canvas. */
.triad-card,
.pain-grid article,
.positioning-statement,
.positioning-points article,
.solution-card,
.role-card,
.implementation-step,
.sales-card,
.architecture-copy,
.tech-item,
.detail-card,
.process-grid article,
.flow-node,
.property-node,
.company-card,
.lead-panel,
.booking-summary-card,
.booking-actions-card{
  background:var(--card-bg);
  color:var(--card-text);
  border-color:var(--card-line);
  box-shadow:var(--card-shadow);
}

.triad{gap:18px}
.triad-card{
  border:1px solid var(--card-line)!important;
  border-radius:28px;
}
.triad-card:last-child{border:1px solid var(--card-line)!important}
.pain-grid article{border:1px solid var(--card-line);border-radius:26px;padding:30px;min-height:270px}
.solution-card--featured{background:#fff;border-color:rgba(166,83,32,.42);box-shadow:0 22px 65px rgba(166,83,32,.14)}
.solution-card::after,.sales-card::after{opacity:.72}
.positioning-statement{background:#fff;border-color:rgba(166,83,32,.32)}
.positioning-statement strong{color:#285247;border-top-color:var(--card-line)}
.positioning-points article{background:#fff}
.company-card{max-width:410px}
.company-card img{border:1px solid var(--card-line);box-shadow:none}
.lead-panel{background:#fff}
.property-node{background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}

/* Dark typography and accessible accents inside light cards. */
.triad-card p,
.pain-grid article p,
.positioning-statement p,
.positioning-points p,
.solution-card p,
.role-card p,
.implementation-step p,
.sales-card p,
.architecture-copy p,
.tech-item span,
.detail-card p,
.process-grid article p,
.flow-node span,
.property-node span,
.company-card small,
.company-card span,
.booking-summary-card>p,
.booking-actions-card>p,
.booking-details dt{
  color:var(--card-muted);
}
.solution-card li,.architecture-copy .feature-list li{color:#344e47}
.triad-card .num,
.pain-grid span,
.process-grid span,
.positioning-statement>span,
.positioning-points i,
.solution-index,
.role-card>span,
.implementation-step>span,
.sales-card .card-no,
.detail-card .icon,
.company-card .contact-phone,
.booking-summary-card .kicker,
.booking-actions-card .kicker{
  color:var(--card-accent);
}
.detail-card .icon{background:#fff1e5}
.solution-badge{color:var(--card-muted);border-color:var(--card-line);background:var(--card-bg-soft)}
.solution-actions a:first-child,.sales-card a{color:var(--card-accent)}
.solution-actions a:last-child{border-color:var(--card-line);color:#38564e}
.positioning-points h3,.positioning-statement h3,.solution-card h3,.role-card h3,.implementation-step h3,.sales-card h3,.architecture-copy h3,.tech-item b,.detail-card h3,.process-grid h3,.flow-node b,.company-card b{color:var(--card-text)}

/* Form card: retain the green/orange brand while switching the surface to white. */
.form-tabs{border-bottom-color:var(--card-line)}
.form-tab{color:#65756f}
.form-tab.is-active{color:var(--card-text);background:var(--card-bg-soft)}
.lead-form label>span,.module-fieldset legend,.field-label{color:#334e46}
.lead-form input,.lead-form select,.lead-form textarea{
  background:var(--card-bg-soft);
  color:var(--card-text);
  border-color:var(--card-line);
}
.lead-form input::placeholder,.lead-form textarea::placeholder{color:#899792}
.lead-form select option{color:#172e28;background:#fff}
.check-card{background:var(--card-bg-soft);border-color:var(--card-line);color:var(--card-text)}
.check-card:has(input:checked){background:#fff1e5;border-color:rgba(166,83,32,.42)}
.check-card small,.consent-row span{color:var(--card-muted)!important}
.slot-picker-status{background:var(--card-bg-soft);color:var(--card-muted);border-color:var(--card-line)}
.slot-picker-status.has-options{background:transparent;color:var(--card-muted)}
.slot-option{background:var(--card-bg-soft);color:var(--card-text);border-color:var(--card-line)}
.slot-option span{color:var(--card-accent)}
.slot-option small{color:var(--card-muted)}
.slot-option.is-selected{background:#fff1e5;border-color:var(--card-accent);box-shadow:0 0 0 2px rgba(166,83,32,.1)}
.form-status.is-success{background:#eaf7ef;color:#1f613d;border-color:#b9dec8}
.form-status.is-success>strong{color:#174b31}
.booking-success-details{color:#36684d}
.booking-success-actions a{color:var(--card-accent);border-bottom-color:rgba(166,83,32,.3)}
.form-status.is-info{background:#edf6f1;color:#245d43;border-color:#c3dfcf}
.form-status.is-error{background:#fff0ed;color:#9c3024;border-color:#ecc0ba}

/* Appointment management cards use the same light-card system. */
.booking-details>div,.manage-slot-groups section,.cancel-booking-form{border-color:var(--card-line)}
.manage-slot-groups h3{color:var(--card-accent)}
.booking-summary-card .btn-secondary,.booking-actions-card .btn-secondary{color:var(--card-text);background:var(--card-bg-soft);border-color:var(--card-line)}
.public-flash.success{background:#eaf7ef;color:#1f613d;border-color:#b9dec8}
.public-flash.error{background:#fff0ed;color:#9c3024;border-color:#ecc0ba}
.text-danger-button{color:#a33b30}

/* Telephone presentation in the company card and dark footer. */
.contact-phone{display:inline-flex!important;align-items:center;gap:7px;margin-top:4px;font-weight:800;color:var(--card-accent)!important}
.footer-contact-phone{color:var(--accent-soft);font-weight:750;white-space:nowrap}
.footer-contact-phone:hover,.contact-phone:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:720px){
  .triad{gap:14px}
  .triad-card{padding:30px 24px}
  .pain-grid article{padding:26px 22px}
}

/* Phase 8 — bilingual navigation, stronger header CTA and managed social links. */
.nav-demo-cta{
  background:var(--accent);
  color:#10100d;
  border:1px solid transparent;
  box-shadow:0 10px 26px rgba(240,163,94,.22);
}
.nav-demo-cta:hover,.nav-demo-cta:focus-visible{
  transform:translateY(-2px);
  background:#f5b16f;
  box-shadow:0 14px 32px rgba(240,163,94,.32);
}
.language-switcher{
  display:flex;
  align-items:center;
  gap:3px;
  padding:3px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.045);
}
.language-switcher a{
  min-width:34px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#d8e4e0;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
}
.language-switcher a.is-active{
  background:#fff;
  color:#123a32;
}
.footer-social{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.footer-social a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#f7f7f3;
  font-size:.72rem;
  font-weight:750;
  transition:.2s ease;
}
.footer-social a:hover,.footer-social a:focus-visible{
  border-color:var(--accent);
  color:var(--accent-soft);
  transform:translateY(-1px);
}
@media (max-width:1050px){
  .nav-actions{margin-left:auto}
  .language-switcher{margin-left:auto}
  .nav-actions .nav-demo-cta{display:none}
}
@media (max-width:720px){
  .language-switcher a{min-width:31px;height:30px;font-size:.68rem}
  .footer-social{order:3}
}

/* Phase 9 — prominent managed social icons, privacy controls and launch pages. */
.social-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.social-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;color:#fff}
.social-link svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}
.social-links--header{gap:6px;padding-inline:2px}
.social-links--header .social-link{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);box-shadow:0 7px 20px rgba(0,0,0,.14)}
.social-links--header .social-link:hover,.social-links--header .social-link:focus-visible{transform:translateY(-2px);border-color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.22)}
.social-link--facebook:hover,.social-link--facebook:focus-visible{background:#1877f2}
.social-link--instagram:hover,.social-link--instagram:focus-visible{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.social-link--youtube:hover,.social-link--youtube:focus-visible{background:#ff0033}
.social-links--mobile{display:none;margin-top:6px;padding-top:18px;border-top:1px solid var(--line);width:100%}
.social-links--mobile .social-link{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18)}
.social-links--footer{gap:10px}
.social-links--footer .social-link{min-height:44px;padding:0 15px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);font-size:.76rem;font-weight:800}
.social-links--footer .social-link:hover,.social-links--footer .social-link:focus-visible{transform:translateY(-2px);border-color:rgba(255,255,255,.55)}
.social-links--footer .social-link--facebook:hover,.social-links--footer .social-link--facebook:focus-visible{background:#1877f2}
.social-links--footer .social-link--instagram:hover,.social-links--footer .social-link--instagram:focus-visible{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}
.social-links--footer .social-link--youtube:hover,.social-links--footer .social-link--youtube:focus-visible{background:#ff0033}
.footer-social{display:none}

.privacy-banner{position:fixed;z-index:300;left:20px;right:20px;bottom:20px;max-width:1120px;margin-inline:auto;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:20px 22px;border:1px solid rgba(255,255,255,.24);border-radius:22px;background:rgba(10,42,36,.97);box-shadow:0 24px 80px rgba(0,0,0,.42);backdrop-filter:blur(18px)}
.privacy-banner[hidden]{display:none}
.privacy-banner__copy strong{display:block;font-size:1rem;margin-bottom:4px}.privacy-banner__copy p{margin:0;color:var(--muted);font-size:.86rem}.privacy-banner__copy a{color:var(--accent-soft);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.privacy-banner__actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.privacy-choice{border:1px solid rgba(255,255,255,.2);border-radius:999px;min-height:42px;padding:0 16px;font-weight:800;cursor:pointer}
.privacy-choice--secondary{background:transparent;color:#fff}.privacy-choice--primary{background:var(--accent);color:#17120d;border-color:transparent}
.privacy-settings-button{position:fixed;z-index:160;left:16px;bottom:16px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(10,42,36,.9);color:#fff;padding:8px 12px;font-size:.68rem;font-weight:800;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.22)}
.privacy-settings-button[hidden]{display:none}
.privacy-main{padding-top:var(--header-h)}.privacy-hero{padding:110px 0 62px;border-bottom:1px solid var(--line)}.privacy-hero h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.92;letter-spacing:-.055em;margin:0 0 22px}.privacy-hero p{max-width:720px;color:var(--muted);font-size:1.12rem}.privacy-hero small{color:var(--muted-2)}
.privacy-content{padding:72px 0 110px}.privacy-document{max-width:900px;display:grid;gap:18px}.privacy-document article{background:#fff;color:var(--card-text);border:1px solid var(--card-line);border-radius:24px;padding:30px;box-shadow:var(--card-shadow)}.privacy-document h2{margin:0 0 12px;font-size:1.35rem}.privacy-document p{margin:0;color:var(--card-muted)}.privacy-document a{color:var(--card-accent);font-weight:800}
@media(max-width:1180px){.social-links--header{display:none}}
@media(max-width:1050px){.social-links--mobile{display:flex}}
@media(max-width:720px){.privacy-banner{left:12px;right:12px;bottom:12px;grid-template-columns:1fr;padding:18px}.privacy-banner__actions{justify-content:stretch}.privacy-choice{width:100%}.social-links--footer{width:100%}.social-links--footer .social-link{flex:1;min-width:120px}.privacy-hero{padding-top:78px}.privacy-document article{padding:24px 20px}}
.consent-row a{color:var(--card-accent);font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.booking-manage-header .nav-actions .btn{display:inline-flex}.booking-manage-header .social-links--header{display:none}}
@media(max-width:1180px){
  .nav-links{display:none;position:fixed;left:24px;right:24px;top:76px;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid var(--line);border-radius:22px;background:rgba(13,48,42,.98);box-shadow:0 24px 60px rgba(0,0,0,.28)}
  .nav-links.is-open{display:flex}
  .menu-toggle{display:grid;place-items:center}
  .nav-actions .nav-demo-cta{display:none}
  .social-links--header{display:flex}
  .social-links--mobile{display:flex}
}
@media(max-width:720px){.social-links--header{display:none}.nav{gap:10px}.nav-actions{gap:7px}}
@media(max-width:1050px){.footer-grid{flex-wrap:wrap}.social-links--footer{order:3;width:100%}.footer-links{margin-left:auto}}
@media(max-width:720px){.footer-links{margin-left:0}}

/* Version 10 — compact, readable public-site typography and desktop rhythm.
   Scope: public UI/UX only. No backend, routing, CRM, analytics or form behaviour changes. */

/* Balanced line wrapping prevents display headings from reading like a narrow column. */
.hero h1,
.page-hero h1,
.section-head h2,
.story-step h3,
.inline-conversion h2,
.decision-cta h2,
.conversion-copy h2,
.cta-copy h2,
.group-title,
.positioning-statement h3,
.privacy-hero h1{
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}
.hero-copy>p,
.page-hero p,
.section-head p,
.story-step>p,
.inline-conversion p,
.decision-cta p,
.conversion-copy>p,
.cta-copy p,
.group-intro{
  text-wrap:pretty;
}

@media (min-width:1051px){
  :root{
    --container:min(1480px,calc(100vw - 64px));
  }

  body{font-size:15px;line-height:1.52}

  /* Opening hero: a wider copy column and restrained display type. */
  .hero{
    min-height:min(100svh,900px);
    padding:calc(var(--header-h) + 48px) 0 54px;
  }
  .hero-grid{
    grid-template-columns:minmax(0,1.28fr) minmax(390px,.72fr);
    gap:36px;
  }
  .hero h1{
    max-width:940px;
    font-size:clamp(3.05rem,3.75vw,4.3rem);
    line-height:.99;
    letter-spacing:-.048em;
  }
  .hero-copy>p{
    max-width:760px;
    margin:22px 0 26px;
    font-size:1.04rem;
  }
  .hero-proof{margin-top:30px}
  .hero-stage{min-height:565px}
  .scroll-cue{bottom:16px}

  /* All standard sections use more horizontal space and less vertical padding. */
  .section{padding:82px 0}
  .section-head{
    grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
    gap:46px;
    margin-bottom:40px;
    align-items:center;
  }
  .compact-head{margin-bottom:32px}
  .section-head h2{
    max-width:860px;
    font-size:clamp(2.3rem,3vw,3.6rem);
    line-height:1.02;
    letter-spacing:-.045em;
  }
  .section-head p{
    max-width:520px;
    font-size:1rem;
  }
  .kicker{margin-bottom:11px}

  /* The long scrollytelling area remains interactive, but no longer consumes a full screen per item. */
  .story{padding:54px 0 82px}
  .story-layout{
    grid-template-columns:minmax(0,.95fr) minmax(460px,1.05fr);
    gap:54px;
  }
  .story-steps{padding-top:2vh}
  .story-step{
    min-height:max(430px,55vh);
  }
  .story-step h3{
    max-width:650px;
    font-size:clamp(2.15rem,3vw,3.55rem);
    line-height:1.01;
    letter-spacing:-.042em;
    margin:13px 0;
  }
  .story-step>p{font-size:1rem;max-width:620px}
  .feature-list{margin-top:17px;gap:7px}
  .story-visual{
    top:calc(var(--header-h) + 20px);
    height:min(700px,calc(100vh - var(--header-h) - 40px));
    min-height:540px;
  }

  /* Main commercial cards: retain content, remove decorative empty height. */
  .triad-card{min-height:250px;padding:34px 30px}
  .triad-card h3{font-size:1.55rem;margin:24px 0 12px}
  .solution-card{min-height:430px;padding:28px}
  .solution-card h3{font-size:1.72rem;margin:38px 0 13px}
  .solution-card ul{margin:20px 0 24px;gap:8px}
  .role-card{min-height:250px;padding:27px}
  .role-card>span{margin-bottom:32px}
  .role-card h3{font-size:1.42rem}
  .sales-card{min-height:330px;padding:26px}
  .sales-card h3{font-size:1.48rem;margin:46px 0 13px}
  .sales-card a{left:26px;bottom:24px}
  .pain-grid article{min-height:215px;padding:25px}
  .pain-grid h3{font-size:1.48rem;margin:34px 0 10px}
  .process-grid article{min-height:235px;padding:21px}
  .process-grid h3{font-size:1.15rem;margin:38px 0 10px}
  .implementation-step{min-height:255px;padding:24px}
  .implementation-step h3{font-size:1.28rem;margin:45px 0 12px}
  .detail-card{min-height:205px;padding:27px}
  .detail-card .icon{margin-bottom:24px}
  .detail-card h3{font-size:1.26rem}
  .architecture-copy{padding:38px}
  .architecture-copy h3{font-size:2rem}
  .tech-item{min-height:122px;padding:19px}
  .flow-section{padding:78px 0}
  .flow{margin:40px 0}
  .flow-node{min-height:116px;padding:17px}

  /* Market-positioning and group sections become editorial rather than poster-like. */
  .market-positioning{overflow:clip}
  .positioning-statement{min-height:410px;padding:36px}
  .positioning-statement h3{
    font-size:clamp(2rem,2.65vw,3.15rem);
    line-height:1.03;
    margin:42px 0 18px;
  }
  .positioning-statement p{font-size:.98rem}
  .positioning-statement strong{padding-top:25px;font-size:.94rem}
  .positioning-points article{padding:23px 25px;grid-template-columns:38px 1fr;gap:15px}
  .positioning-points h3{font-size:1.22rem}
  .positioning-points p{font-size:.88rem}
  .group-section{padding:86px 0}
  .group-grid{grid-template-columns:1fr 1fr;gap:58px}
  .group-title{
    max-width:710px;
    font-size:clamp(2.35rem,3.45vw,4rem)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }
  .group-intro{max-width:700px;font-size:1rem!important;margin-top:18px!important}
  .group-map{min-height:500px}
  .value-list{gap:12px;margin-top:27px}
  .value-item{padding-top:12px}

  /* Supporting conversion areas remain prominent without becoming full-screen posters. */
  .inline-conversion{padding:54px 0}
  .inline-conversion-grid,.decision-cta-grid{gap:46px}
  .inline-conversion h2,.decision-cta h2{
    max-width:850px;
    font-size:clamp(2.15rem,3.2vw,3.75rem);
    line-height:1.01;
  }
  .decision-cta{padding:62px 0}
  .conversion-section{padding:88px 0}
  .conversion-grid{grid-template-columns:.96fr 1.04fr;gap:48px}
  .conversion-copy{top:104px}
  .conversion-copy h2{
    max-width:650px;
    font-size:clamp(2.35rem,3.55vw,4.15rem);
    line-height:.99;
  }
  .conversion-copy>p{font-size:1rem}
  .demo-expectations{margin:28px 0;gap:12px}
  .form-panel{padding:29px}

  .cta-section{padding:88px 0}
  .cta-box{min-height:430px;padding:50px}
  .cta-copy{max-width:850px}
  .cta-copy h2{
    font-size:clamp(2.65rem,4.15vw,4.9rem);
    line-height:.96;
  }
  .cta-copy p{font-size:1rem}

  /* Product-page heroes no longer turn one sentence into a tall typographic column. */
  .page-hero{
    min-height:58svh;
    padding:calc(var(--header-h) + 72px) 0 68px;
  }
  .page-hero h1{
    max-width:1120px;
    font-size:clamp(3rem,4.55vw,5.4rem);
    line-height:.98;
    letter-spacing:-.048em;
    margin-bottom:20px;
  }
  .page-hero p{max-width:900px;font-size:1.04rem}
  .breadcrumb{margin-bottom:24px}
  .page-hero-actions{margin-top:24px}

  .privacy-hero{padding:82px 0 48px}
  .privacy-hero h1{font-size:clamp(2.8rem,4.5vw,5rem);line-height:.98}
  .privacy-content{padding:55px 0 85px}
}

/* Tablet retains the single-column composition, with shorter sections and moderated typography. */
@media (min-width:721px) and (max-width:1050px){
  .hero{padding-top:118px;padding-bottom:54px}
  .hero h1{font-size:clamp(3.35rem,7.6vw,4.9rem);line-height:.97}
  .section{padding:84px 0}
  .section-head h2{font-size:clamp(2.6rem,6vw,4.1rem);line-height:.99}
  .story-step{padding:52px 0}
  .story-step h3{font-size:clamp(2.4rem,5.7vw,3.7rem)}
  .group-section,.conversion-section,.cta-section{padding:86px 0}
  .page-hero{min-height:auto;padding:calc(var(--header-h) + 80px) 0 72px}
  .page-hero h1{font-size:clamp(3.25rem,7vw,5.2rem);line-height:.97}
  .cta-box{min-height:470px;padding:52px}
}

/* Mobile stays intentionally stacked, but avoids oversized headings and unnecessary empty space. */
@media (max-width:720px){
  body{line-height:1.52}
  .hero{padding-top:112px;padding-bottom:48px}
  .hero h1{font-size:clamp(2.35rem,10vw,3.25rem);line-height:.98;letter-spacing:-.047em}
  .hero-copy>p{font-size:.98rem;margin:20px 0 24px}
  .hero-proof{margin-top:30px}
  .section{padding:68px 0}
  .section-head{margin-bottom:34px}
  .section-head h2{font-size:clamp(2.05rem,9vw,3rem);line-height:1;letter-spacing:-.045em}
  .section-head p{font-size:.96rem}
  .story{padding:36px 0 58px}
  .story-step{padding:50px 0}
  .story-step h3{font-size:clamp(2.15rem,10vw,3rem);line-height:1}
  .story-step>p{font-size:.96rem}
  .triad-card{padding:27px 22px;min-height:auto}
  .triad-card h3{font-size:1.45rem;margin:22px 0 10px}
  .positioning-statement h3{font-size:clamp(2rem,9.5vw,2.9rem)}
  .inline-conversion h2,.decision-cta h2{font-size:clamp(2.15rem,10vw,3.15rem);line-height:1}
  .group-section{padding:66px 0}
  .group-title{font-size:clamp(2.2rem,10.5vw,3.35rem)!important;line-height:1!important}
  .group-intro{font-size:.96rem!important}
  .conversion-section{padding:70px 0}
  .conversion-copy h2{font-size:clamp(2.3rem,10.8vw,3.35rem);line-height:.99}
  .cta-section{padding:68px 0}
  .cta-box{min-height:400px;padding:34px 24px;border-radius:30px}
  .cta-copy h2{font-size:clamp(2.45rem,11vw,3.55rem);line-height:.97}
  .page-hero{min-height:auto;padding:calc(var(--header-h) + 62px) 0 58px}
  .page-hero h1{font-size:clamp(2.35rem,10.5vw,3.45rem);line-height:.98;letter-spacing:-.048em}
  .page-hero p{font-size:.98rem}
  .process-grid article,.implementation-step{padding:23px 21px}
  .process-grid h3,.implementation-step h3{margin-top:34px}
  .detail-card{min-height:auto;padding:24px 21px}
  .detail-card .icon{margin-bottom:22px}
}


/* Version 11 — mobile navigation, swipeable card groups and compact mobile rhythm.
   Public responsive UI only; no backend, routes, CRM, analytics or SEO changes. */
.mobile-menu-heading,.mobile-menu-support,.mobile-carousel-meta{display:none}
.menu-toggle-icon{width:20px;height:16px;display:grid;align-content:space-between}
.menu-toggle-icon i{display:block;width:100%;height:2px;border-radius:999px;background:currentColor;transition:transform .25s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:1180px){
  body.menu-open{overflow:hidden;overscroll-behavior:none}
  .site-header{z-index:1002}
  .site-header .nav{position:relative;z-index:1002}
  .nav-actions>.language-switcher,.nav-actions>.social-links--header{display:none!important}
  .menu-toggle{display:grid;place-items:center;position:relative;z-index:1004;width:48px;height:48px;flex:0 0 auto;background:rgba(255,255,255,.045)}
  .nav-links{
    display:flex!important;
    position:fixed!important;
    z-index:1000;
    inset:0!important;
    width:100%;
    height:100dvh;
    padding:calc(env(safe-area-inset-top) + 112px) max(24px,calc((100vw - 720px)/2)) calc(env(safe-area-inset-bottom) + 28px)!important;
    border:0!important;
    border-radius:0!important;
    background:linear-gradient(145deg,#0b342d 0%,#123f35 58%,#174b3f 100%)!important;
    box-shadow:none!important;
    flex-direction:column;
    align-items:stretch!important;
    gap:0!important;
    overflow-y:auto;
    overscroll-behavior:contain;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-12px);
    transition:opacity .24s ease,transform .24s ease,visibility 0s linear .24s;
  }
  .nav-links.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
  .mobile-menu-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:20px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.15)}
  .mobile-menu-heading span{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-soft)}
  .mobile-menu-heading strong{font-size:.8rem;color:#b8cbc5;font-weight:700}
  .nav-links>a{display:flex;align-items:center;min-height:58px;padding:0;border-bottom:1px solid rgba(255,255,255,.11);font-size:clamp(1.25rem,4vw,1.65rem);font-weight:750;letter-spacing:-.025em;color:#f7f5ef}
  .nav-links>a::after{display:none}
  .social-links--mobile{display:flex!important;width:auto;margin:22px 0 0;padding:0;border:0;gap:10px}
  .social-links--mobile .social-link{width:46px;height:46px;background:rgba(255,255,255,.08)}
  .mobile-menu-support{display:grid;gap:20px;margin-top:auto;padding-top:28px}
  .mobile-menu-demo{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:0 22px;border-radius:999px;background:var(--accent);color:#17120d;font-weight:850;font-size:1rem;box-shadow:0 14px 35px rgba(240,163,94,.2)}
  .mobile-menu-demo span{font-size:1.3rem}
  .mobile-menu-locale{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:4px}
  .mobile-menu-locale>span{font-size:.78rem;color:#afc4bd}
  .language-switcher--mobile{display:flex!important;margin:0!important}
  .mobile-menu-contact{display:grid;gap:3px;padding:18px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
  .mobile-menu-contact strong{font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}
  .mobile-menu-contact span{color:#afc4bd;font-size:.82rem}
  .mobile-menu-contact a{color:var(--accent-soft);font-size:.9rem;font-weight:800;margin-top:4px}
  .mobile-menu-utility{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px}
  .mobile-menu-utility a,.mobile-menu-utility button{border:0;background:none;padding:0;color:#c9d7d2;font:inherit;font-size:.78rem;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
  .menu-open .site-header{background:transparent!important;border-color:transparent!important;backdrop-filter:none}
}

@media (max-width:720px){
  :root{--container:min(100% - 40px,1180px);--header-h:78px}
  html{scroll-padding-top:calc(var(--header-h) + 12px)}
  body{font-size:15px;line-height:1.48;overflow-x:hidden}
  .site-header{height:var(--header-h);padding-top:env(safe-area-inset-top)}
  .brand-horizontal-shell{width:150px;height:43px;border-radius:12px;padding:3px 7px}
  .nav{gap:8px}
  .menu-toggle{width:46px;height:46px}
  .nav-links{padding-top:calc(env(safe-area-inset-top) + 96px)!important;padding-left:24px!important;padding-right:24px!important}

  /* Mobile hero: readable, contained and visibly connected to the next section. */
  .hero{min-height:auto;padding:calc(var(--header-h) + 44px) 0 58px;overflow:clip}
  .hero-grid{display:block}
  .hero-copy{min-width:0;width:100%}
  .eyebrow{font-size:.64rem;letter-spacing:.16em;margin-bottom:14px}
  .hero h1{max-width:100%;font-size:clamp(2.55rem,11.4vw,3.25rem);line-height:.98;letter-spacing:-.052em;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
  .hero h1 em{display:inline;font-size:.94em}
  .hero-copy>p{font-size:.97rem;line-height:1.55;margin:20px 0 24px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .btn{width:100%}
  .hero-stage{min-height:390px;margin-top:34px}
  .device-stack{transform:scale(.88);transform-origin:center top;inset:20px -22px auto}
  .hero-proof{margin-top:28px}

  .section{padding:60px 0}
  .section-head{gap:14px;margin-bottom:26px}
  .section-head h2{font-size:clamp(2rem,9vw,2.75rem);line-height:1.02}
  .section-head p{font-size:.94rem;line-height:1.55}
  .page-hero{padding:calc(var(--header-h) + 42px) 0 50px;min-height:auto}
  .page-hero h1{max-width:100%;font-size:clamp(2.45rem,10.7vw,3.35rem);line-height:.99;overflow-wrap:anywhere}
  .page-hero p{font-size:.96rem;line-height:1.55}
  .breadcrumb{margin-bottom:22px;overflow-x:auto;white-space:nowrap}

  /* Native swipe carousels. The next card remains visible as a clear affordance. */
  .mobile-carousel-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;color:#b9ccc6;font-size:.7rem}
  .mobile-carousel-meta strong{color:var(--accent-soft);font-size:.72rem;letter-spacing:.08em}
  .mobile-carousel{
    display:flex!important;
    grid-template-columns:none!important;
    gap:14px!important;
    width:calc(100% + 20px);
    max-width:calc(100vw - 20px);
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:2px 20px 20px 0!important;
    margin:0!important;
    align-items:stretch;
  }
  .mobile-carousel::-webkit-scrollbar{display:none}
  .mobile-carousel>.flow-arrow{display:none!important}
  .mobile-carousel>*:not(.flow-arrow){flex:0 0 min(84vw,350px)!important;width:min(84vw,350px)!important;max-width:min(84vw,350px)!important;scroll-snap-align:start;scroll-snap-stop:always;height:auto;min-height:0!important;margin:0!important;box-sizing:border-box}
  .hero-proof.mobile-carousel>*{flex-basis:min(72vw,285px)!important;width:min(72vw,285px)!important;max-width:min(72vw,285px)!important}
  .hero-proof .proof-item{border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.045);padding:18px}
  .triad-card{border-radius:28px!important}
  .pain-grid article{padding:25px 22px!important}
  .pain-grid h3{margin:32px 0 10px}
  .process-grid article,.implementation-step,.detail-card,.role-card,.sales-card,.solution-card,.tech-item,.positioning-points article{padding:24px 22px!important}
  .process-grid h3,.implementation-step h3,.solution-card h3,.sales-card h3{margin-top:32px!important}
  .sales-card a{position:static;display:inline-flex;margin-top:24px}
  .solution-card{display:flex;flex-direction:column}
  .solution-actions{margin-top:auto;padding-top:20px}

  /* Mobile scrollytelling is a swipe deck instead of a very long vertical sequence. */
  .story{padding:48px 0 54px}
  .story-layout{display:block}
  .story-steps{padding:0!important}
  .story-step{display:flex!important;justify-content:flex-start;opacity:1!important;transform:none!important;border:1px solid var(--card-line)!important;border-radius:28px;background:#fff;color:var(--card-text);padding:28px 23px!important;min-height:430px!important}
  .story-step h3{font-size:clamp(1.9rem,8.5vw,2.55rem);margin:24px 0 14px;color:var(--card-text)}
  .story-step>p{color:var(--card-muted);font-size:.94rem}
  .story-step .feature-list{margin-top:18px}
  .story-step .feature-list li{color:#344e47;font-size:.88rem}
  .story-step::after{display:none!important}

  /* Flow steps also swipe horizontally on small screens. */
  .flow.mobile-carousel{justify-content:flex-start!important}
  .flow-node{background:#fff;color:var(--card-text);border-color:var(--card-line);box-shadow:var(--card-shadow);min-height:165px!important;justify-content:center}
  .flow-node span{color:var(--card-muted)}

  /* Forms: smaller controls and a correctly aligned native checkbox. */
  .form-panel{padding:22px 18px;border-radius:24px}
  .form-panel label{font-size:.78rem}
  .form-panel input,.form-panel select,.form-panel textarea{font-size:1rem;padding:13px 14px}
  .form-panel textarea{min-height:130px}
  .consent-row{display:grid!important;grid-template-columns:22px 1fr!important;gap:10px!important;align-items:start!important}
  .consent-row input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-width:18px!important;margin:3px 0 0!important;padding:0!important;border-radius:3px!important;box-shadow:none!important}
  .consent-row span{font-size:.78rem!important;line-height:1.45}
  .form-panel .btn[type="submit"]{min-height:54px;padding:0 18px;font-size:.92rem;line-height:1.2}

  /* One clear conversion control, not three competing floating controls. */
  .floating-demo{left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));min-height:52px;border-radius:999px;padding:0 12px 0 20px;display:flex;justify-content:space-between;z-index:145}
  .floating-demo span{display:block!important;font-size:.86rem}
  .floating-demo b{width:38px;height:38px}
  .go-top{right:18px;bottom:calc(80px + env(safe-area-inset-bottom));width:46px;height:46px;z-index:144}
  .privacy-settings-button{display:none!important}
  body:has(.conversion-section:is(:hover,:focus-within)) .floating-demo{opacity:0;pointer-events:none}

  /* Compact mobile footer. Navigation and contact details are also available in the menu. */
  .site-footer{padding:38px 0 calc(92px + env(safe-area-inset-bottom))}
  .footer-grid{display:grid!important;grid-template-columns:1fr auto;gap:18px 12px;align-items:center!important}
  .footer-brand{grid-column:1 / -1;align-items:center;gap:11px}
  .footer-brand b{font-size:.78rem;letter-spacing:.12em}
  .footer-brand small{font-size:.69rem;line-height:1.45;max-width:280px}
  .brand-logo-shell--compact{width:38px;height:38px}
  .social-links--footer{grid-column:1;width:auto!important;gap:8px}
  .social-links--footer .social-link{flex:0 0 auto!important;min-width:0!important;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%}
  .social-links--footer .social-link span{display:none}
  .footer-links{grid-column:2;display:flex;justify-content:flex-end;gap:10px 14px!important;margin:0!important;font-size:.7rem}
  .footer-links a:nth-child(-n+2){display:none}

  .privacy-banner{bottom:calc(12px + env(safe-area-inset-bottom));max-height:calc(100dvh - 24px);overflow:auto}
}

@media (max-width:390px){
  :root{--container:min(100% - 32px,1180px)}
  .brand-horizontal-shell{width:142px}
  .hero h1{font-size:clamp(2.3rem,11.2vw,2.85rem)}
  .mobile-carousel>*:not(.flow-arrow){flex-basis:86vw!important;width:86vw!important;max-width:86vw!important}
  .footer-grid{grid-template-columns:1fr}
  .social-links--footer,.footer-links{grid-column:1;justify-content:flex-start}
}
@media (max-width:1180px){.site-header .brand{position:relative;z-index:1004}}

/* Version 11.2 — mobile visual showcase fix.
   On phones, the two product mockups live in a dedicated visual block between
   the hero actions and the feature carousel. They may overlap each other, but
   never the hero copy, buttons or informational cards. */
@media (max-width:720px){
  .hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    position:relative;
  }
  .hero-copy{display:contents}
  .hero-copy>.eyebrow{order:1}
  .hero-copy>h1{order:2}
  .hero-copy>p{order:3}
  .hero-actions{order:4;position:relative;z-index:2}
  .hero-stage{order:5}
  .hero-copy>.mobile-carousel-meta{order:6}
  .hero-proof{order:7}

  .hero-actions .btn-secondary{
    background:rgba(255,255,255,.035);
    border-color:var(--line);
    color:#fff;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
  }

  .hero-stage{
    position:relative;
    z-index:1;
    width:100%;
    max-width:none;
    min-height:430px;
    margin:22px 0 22px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:30px;
    overflow:hidden;
    isolation:isolate;
    background:
      radial-gradient(circle at 88% 82%,rgba(240,163,94,.24),transparent 31%),
      radial-gradient(circle at 18% 16%,rgba(95,163,143,.18),transparent 35%),
      linear-gradient(145deg,rgba(255,255,255,.055),rgba(4,34,29,.2));
    box-shadow:0 24px 55px rgba(3,24,20,.2);
  }
  .hero-stage::after{
    content:"";
    position:absolute;
    inset:auto -10% -42% 28%;
    height:72%;
    border:1px solid rgba(247,216,155,.14);
    border-radius:50%;
    transform:rotate(-10deg);
    pointer-events:none;
  }
  .hero-stage .sun-orbit{
    width:360px;
    height:360px;
    right:-155px;
    top:-85px;
    opacity:.68;
  }
  .hero-stage .sun-core{
    width:128px;
    height:128px;
    right:-26px;
    top:auto;
    bottom:-34px;
    opacity:.72;
    box-shadow:0 0 90px rgba(240,163,94,.28);
  }
  .hero-stage .device-stack{
    position:absolute;
    inset:0;
    transform:none;
    perspective:none;
  }
  .hero-stage .admin-card{
    width:min(82vw,310px);
    height:230px;
    left:0;
    top:46px;
    bottom:auto;
    z-index:2;
    opacity:1;
    filter:none;
    transform:rotateZ(-1.8deg);
    transform-origin:center;
    box-shadow:0 22px 48px rgba(0,0,0,.28);
  }
  .hero-stage .phone{
    width:174px;
    height:356px;
    right:-2px;
    top:auto;
    bottom:12px;
    z-index:3;
    transform:rotateZ(3deg);
    transform-origin:center bottom;
    box-shadow:0 24px 54px rgba(0,0,0,.32);
  }

  .hero-copy>.mobile-carousel-meta{margin-top:0}
  .hero-proof{margin-top:0}
  .hero-proof .proof-item{
    background:rgba(255,255,255,.045);
    border-color:rgba(255,255,255,.14);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:none;
  }
  .hero-proof .proof-item strong{color:#fff}
  .hero-proof .proof-item span{color:var(--muted-2)}
}

@media (max-width:390px){
  .hero-stage{min-height:400px;border-radius:26px}
  .hero-stage .admin-card{width:min(80vw,282px);height:210px;top:40px}
  .hero-stage .phone{width:156px;height:326px;right:-5px;bottom:10px}
}

