﻿/* Five complete designs, each with an explicit light and dark palette. */
.hero-study[data-tone=dark]{--study-bg:#121a15;--study-ink:#f4f7ef;--study-muted:#bbc8ba;--study-line:#465445;--study-accent:#a5ed76;color-scheme:dark}
.hero-study[data-tone=light]{color-scheme:light}
/* 01: the approved first-impression frame and morphing colour shapes. */
.study-impression{background:#f3f5ec;--frame-bg:#f7faef}
.study-impression[data-tone=dark]{background:#101710;--frame-bg:#172116}
.study-impression .study-art{inset:28px 3.5% 35px;overflow:hidden;border:1px solid var(--study-line);border-radius:22px;background:var(--frame-bg);box-shadow:14px 14px 0 #87e64b}
.study-impression .study-content{width:min(84%,1370px);padding-top:92px;padding-bottom:66px}
.study-impression .study-title{font-size:clamp(28px,5.9vw,102px);margin-bottom:60px}
.study-impression .study-primary{background:#87e64b;border-color:#87e64b;color:#142119}.study-impression .study-primary:hover{background:#bcf39b;border-color:#bcf39b}
.study-impression .orbit-top{width:clamp(330px,38vw,560px);right:-12%;top:-10%}.study-impression .orbit-bottom{z-index:2;width:clamp(260px,25vw,390px);left:-7%;bottom:-12%;opacity:.92}.study-impression .study-orbit::before,.study-impression .study-orbit::after{display:none}
.study-impression .study-bubble{background:conic-gradient(from 30deg,#87e64b,#4158ff,#ff6e54,#87e64b);filter:saturate(1.15);opacity:.8;box-shadow:inset 15px 15px 40px #ffffff14;animation-duration:10s,15s}.study-impression .study-bubble::before{opacity:.1}.study-impression .orbit-bottom .study-bubble{background:radial-gradient(circle at 35% 35%,#fff,transparent 12%),linear-gradient(135deg,#ffbd95,#6f43ff);animation-duration:12s,15s;animation-delay:-4s,-6s}
/* 02: a restrained architectural composition, without the gradient or watermark. */
.study-connected{--study-bg:#f5f1e9;--study-accent:#386c4b;--study-line:#c5c9bd;--arch:#dfe5d7;--arch-edge:#a3b29f}
.study-connected[data-tone=dark]{--study-bg:#16211f;--study-accent:#c6e5b6;--study-line:#425952;--arch:#213832;--arch-edge:#5d7d6d}
.study-connected .study-title{font-weight:400}.study-connected .study-summary{padding-top:30px;border-top:1px solid var(--study-line)}.study-connected .promise-rule{max-width:85px;height:3px}.study-connected .study-art{left:64%;border-left:1px solid var(--study-line);background:var(--arch)}
.architecture-frame{position:absolute;width:78%;height:70%;right:-23%;top:8%;border:1px solid var(--arch-edge);border-radius:46% 46% 0 0;transform:rotate(15deg);box-shadow:-24px 24px 0 var(--arch),-25px 25px 0 var(--arch-edge)}.frame-two{right:-48%;top:19%;transform:rotate(15deg)}.architecture-disc{position:absolute;width:160px;aspect-ratio:1;right:17%;bottom:10%;border-radius:50%;background:#87e64b;box-shadow:18px 18px 0 #0d291522;animation:architect-float 14s ease-in-out infinite alternate}.study-connected .study-intro,.study-connected .study-title,.study-connected .study-summary,.study-connected .study-baseline{position:relative}.study-connected .study-art::after{content:'';position:absolute;inset:0;background:var(--study-bg);opacity:.4}
/* 03: keep the luminous morphing bubble on a quiet, solid background. */
.study-search{--study-bg:#f4f6f2;--study-accent:#305d77;--study-line:#b8c9c5}
.study-search[data-tone=dark]{--study-bg:#101d2b;--study-accent:#c1eabd;--study-muted:#b7c9d4;--study-line:#3b5263}
.study-search .orbit-top{width:clamp(300px,34vw,510px);right:-9%;top:5%}.study-search .study-bubble{background:conic-gradient(from 30deg,#fff,#99d5ff,#87e64b,#342bff,#fff);box-shadow:inset 12px 12px 35px #ffffff30,0 35px 80px #10265022;opacity:.85}.study-search .orbit-bottom{left:-27%;bottom:-55%;width:clamp(360px,43vw,650px)}.study-search .orbit-bottom .study-bubble{background:linear-gradient(135deg,#c4f4e0,#6faedf);opacity:.2}.study-search .study-title{font-weight:400}.study-search .study-summary{grid-template-columns:1.4fr 1fr;gap:20px 70px}.study-search .study-promise{grid-column:1;grid-row:1}.study-search .study-description{grid-column:1;grid-row:2;max-width:50ch}.study-search .study-actions{grid-column:2;grid-row:1/3;flex-direction:row;align-items:center;justify-content:flex-end}.study-search .promise-rule{display:none}
/* 04: one clean stroke, with normal kerning and room between letters. */
.study-demand{--study-bg:#eee8df;--study-accent:#37642c;--study-line:#b1bca8;--grid-line:#283b231c}
.study-demand[data-tone=dark]{--study-bg:#172018;--study-accent:#b5ef91;--grid-line:#eaffdc16}
.hero-study.study-demand .outlined-word{font-family:Arial,Helvetica,sans-serif;font-size:.92em;font-style:normal;font-weight:600;letter-spacing:.035em;font-kerning:normal;font-variant-ligatures:none;padding-right:.015em;color:transparent;-webkit-text-stroke:1.15px var(--study-accent);text-shadow:none;line-height:1}
.demand-grid{position:absolute;inset:8% -10% 15% 65%;border:1px solid var(--study-line);background:repeating-linear-gradient(90deg,transparent 0 10%,var(--grid-line) 10% 10.2%),repeating-linear-gradient(0deg,transparent 0 14%,var(--grid-line) 14% 14.2%),var(--study-bg);box-shadow:25px 25px 0 #87e64b;transform:rotate(-3deg);animation:plan-drift 14s ease-in-out infinite alternate;opacity:.6}.demand-trace{position:absolute;width:170px;height:170px;right:2%;top:35%;border:1px solid var(--study-line);transform:rotate(-3deg);background:#87e64b22;animation:trace-drift 11s ease-in-out infinite alternate}.study-demand .study-summary{padding-top:30px;border-top:1px solid var(--study-line)}.study-demand .study-primary{box-shadow:6px 6px 0 #87e64b;border-radius:2px}.study-demand .promise-rule{width:85px;height:3px}
/* 05: a sculpted wall of softly moving CSS spheres, informed by the local shape library. */
.study-wall{--study-bg:#f2f0e9;--study-ink:#273e32;--study-accent:#467459;--study-line:#bbc5b6;--wall-light:#fffef5;--wall-mid:#d7dfcb;--wall-deep:#8da88b}
.study-wall[data-tone=dark]{--study-bg:#11231d;--study-ink:#f2f6e7;--study-accent:#b5e995;--wall-light:#789c72;--wall-mid:#33543e;--wall-deep:#132d22}
.bubble-wall{position:absolute;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:540px;right:-170px;top:-60px;transform:rotate(-18deg);mask-image:linear-gradient(90deg,transparent,#000 32%);opacity:.92}
.wall-bubble{display:block;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 26%,var(--wall-light),var(--wall-mid) 48%,var(--wall-deep) 100%);box-shadow:inset -12px -15px 25px #142a2426,8px 14px 22px #12261922,inset 3px 3px 5px #ffffff55;animation:wall-breathe 7s ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.65s)}.wall-bubble:nth-child(5){background:radial-gradient(circle at 30% 26%,#ecffd8,#87e64b 52%,#427529);box-shadow:inset -12px -15px 25px #142a2426,8px 14px 22px #12261922}.study-wall .study-title{font-weight:400}.study-wall .study-summary{grid-template-columns:1fr 1.4fr 1fr}.study-wall .study-primary{border-radius:0}.study-wall .promise-rule{width:90px}.study-wall .study-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--study-bg) 35%,transparent 90%)}
@keyframes architect-float{to{transform:translateY(-18px)}}
@keyframes plan-drift{to{transform:rotate(-1deg) translateY(-10px)}}
@keyframes trace-drift{to{transform:rotate(-3deg) translate(15px,-22px)}}
@keyframes wall-breathe{from{transform:translateY(0) scale(.96)}to{transform:translateY(-10px) scale(1)}}
/* Homepage uses the exact approved panel, independent of the review toolbar. */
.homepage-hero{--header-height:var(--header-h);--review-bar:0px;margin-top:var(--header-h);min-height:calc(100svh - var(--header-h));font-family:'Instrument Sans',Arial,sans-serif}.homepage-hero .study-content{min-height:inherit}.homepage-hero .study-edition{display:none}
@media(min-width:1800px){.study-impression .study-content{width:min(84%,1480px)}.study-impression .study-title{font-size:108px}.bubble-wall{width:650px;right:-150px}}
@media(max-width:1150px){.study-impression .study-title{font-size:6.1vw}.study-impression .study-summary,.study-wall .study-summary{grid-template-columns:1fr 1.6fr}.study-impression .orbit-top{right:-25%;top:-10%}.study-search .study-actions{flex-direction:column;align-items:flex-end}.study-connected .study-art{left:70%}.bubble-wall{right:-290px}.study-search .orbit-top{right:-24%}.study-impression .study-description{max-width:46ch}}
@media(max-width:850px){.study-impression .study-content{padding-top:80px}.study-impression .study-art{inset:24px 3% 28px;box-shadow:10px 10px 0 #87e64b}.study-impression .orbit-top{width:340px;right:-31%;top:-5%}.study-impression .orbit-bottom{width:270px;left:-25%;bottom:-24%}.study-search .orbit-top{width:360px;right:-35%;top:0}.study-search .orbit-bottom{left:-43%;bottom:-42%}.study-search .study-summary{gap:20px 35px}.bubble-wall{right:-335px;top:-45px}.architecture-disc{right:-40%;opacity:.5}}
@media(max-width:600px){.study-impression .study-content{width:calc(100% - 64px);padding-top:65px;padding-bottom:58px}.study-impression .study-art{inset:18px 12px 25px;border-radius:16px;box-shadow:8px 8px 0 #87e64b}.study-impression .study-title{font-size:6.25vw;line-height:1.2;margin-bottom:36px}.study-impression .study-eyebrow{font-size:7px;letter-spacing:.08em}.study-impression .study-summary,.study-search .study-summary,.study-wall .study-summary{grid-template-columns:1fr;gap:23px}.study-impression .study-description{font-size:15px}.study-impression .study-promise h2{font-size:19px}.study-impression .study-primary{min-width:118px;font-size:11px;padding:12px 14px;gap:20px}.study-impression .study-actions{gap:12px}.study-impression .study-secondary{font-size:11px;gap:12px}.study-impression .orbit-top{width:240px;right:-180px;top:-24px}.study-impression .orbit-bottom{width:220px;left:-155px;bottom:-90px}.study-impression .study-baseline{font-size:8px}.study-search .study-promise,.study-search .study-description,.study-search .study-actions{grid-column:auto;grid-row:auto}.study-search .study-actions{flex-direction:row;align-items:center;justify-content:flex-start}.study-search .orbit-top{width:280px;right:-195px;top:-20px}.study-search .orbit-bottom{width:350px;left:-260px;bottom:-190px}.study-demand .demand-grid{inset:9% -95% 14% 80%;box-shadow:18px 18px 0 #87e64b;opacity:.45}.study-demand .demand-trace{right:-28%;top:31%;width:140px;height:140px}.hero-study.study-demand .outlined-word{-webkit-text-stroke-width:.8px}.study-connected .study-art{left:82%;opacity:.55}.architecture-frame{width:200px;right:-210px}.architecture-disc{width:100px;right:-75px}.bubble-wall{width:380px;right:-295px;top:0;gap:12px}.study-wall .study-art::after{background:linear-gradient(90deg,var(--study-bg) 35%,transparent)}.homepage-hero{min-height:calc(100svh - var(--header-h))}}
@media(forced-colors:active){.hero-study.study-demand .outlined-word{-webkit-text-stroke:0;color:CanvasText}}

/* Homepage: full-bleed opening panel beneath transparent navigation. */
.homepage-hero.study-impression{margin-top:0;min-height:100svh;border-radius:0}
.homepage-hero.study-impression .study-art{inset:0;border:0;border-radius:0;box-shadow:none}
.homepage-hero::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;border-right:6px solid #87e64b;border-bottom:6px solid #87e64b}
.homepage-hero.study-impression .study-content{padding-top:calc(var(--header-h) + 92px)}
.header.hero-overlay{background:transparent;border-color:transparent;backdrop-filter:none}
.header.hero-overlay .logo,.header.hero-overlay .nav-links a{color:#f4f7ef}
.header.hero-overlay .nav>.button{background:#87e64b;border-color:#87e64b;color:#142119}
.header.hero-overlay .menu-toggle{background:transparent;border-color:#f4f7ef66}
.header.hero-overlay .menu-toggle span{background:#f4f7ef}
.menu-open .header.hero-overlay{background:var(--cream)}
.menu-open .header.hero-overlay .logo{color:var(--ink)}
.menu-open .header.hero-overlay .menu-toggle{border-color:var(--line)}
.menu-open .header.hero-overlay .menu-toggle span{background:var(--ink)}
@media(max-width:850px){.homepage-hero.study-impression .study-content{padding-top:calc(var(--header-h) + 80px)}}
@media(max-width:600px){.homepage-hero.study-impression .study-content{padding-top:calc(var(--header-h) + 65px)}.homepage-hero::after{border-right-width:4px;border-bottom-width:4px}}

/* The new offering line stays together on a second row. */
.hero-study .study-title{font-size:clamp(26px,5.45vw,94px)}
.hero-study.study-impression .study-title{font-size:clamp(24px,5.2vw,90px)}
.sales-word{font-weight:500}
@media(min-width:1800px){.hero-study .study-title{font-size:100px}.hero-study.study-impression .study-title{font-size:96px}}
@media(max-width:600px){.hero-study .study-title{font-size:5.9vw}.hero-study.study-impression .study-title{font-size:5.4vw}}
