/* Mature Businesses: Magic Patterns stage page and interactive operating wheel. */
.growing-page { --gb-cyan:var(--public-brand-blue); --gb-ink:#080b0d; --gb-line:rgba(255,255,255,.11); --gb-muted:#9dacb3; position:relative; overflow:hidden; color:#eef5f6; background:var(--gb-ink); }
body.doo-marketing .marketing-main:has(.growing-page) { width:100%; max-width:none; margin:0; padding:74px 0 0; }
.growing-shell { width:min(1320px,calc(100% - 64px)); margin:0 auto; }
.growing-hero,.growing-section,.growing-quote,.growing-final { position:relative; overflow:hidden; }
.growing-hero { min-height:min(810px,calc(100svh - 74px)); padding:76px 0 104px; isolation:isolate; }
.growing-hero::before { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,transparent 9%,rgba(255,255,255,.052) 9.1%,transparent 9.2%,transparent 63%,rgba(255,255,255,.055) 63.1%,transparent 63.2%,transparent 90%,rgba(255,255,255,.045) 90.1%,transparent 90.2%); mask-image:linear-gradient(to bottom,transparent,#000 11%,#000 87%,transparent); content:""; }
.growing-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(520px,1fr); gap:clamp(34px,4vw,68px); align-items:center; }
.growing-stage-label,.growing-section-head > span { display:flex; align-items:center; gap:11px; color:var(--gb-cyan); font-size:.69rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.growing-stage-label i { width:38px; border-top:1px solid rgba(var(--public-brand-rgb),.55); }
.growing-name { margin:30px 0 18px; color:#a4b3b8; font-size:.88rem; font-weight:700; text-transform:uppercase; letter-spacing:.12em; }
.growing-hero h1 { max-width:700px; margin:0 !important; font-size:clamp(3rem,4vw,4.35rem) !important; letter-spacing:-.058em !important; line-height:.98 !important; }
.growing-audience { margin:28px 0 0; color:#edf6f7; font-size:1.16rem; font-weight:650; }
.growing-lede { max-width:630px; margin:20px 0 0; color:var(--gb-muted); font-size:1.04rem; line-height:1.64; }
.growing-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:31px; }
.growing-page .btn { min-height:48px; border-radius:10px !important; padding-inline:22px; }
.growing-note { display:block; margin-top:11px; color:#81939a; font-size:.75rem; }

/* Wheel: segment fills are intentionally limited to the selected pillar. */
.growing-wheel-stage { position:relative; min-height:620px; padding-top:28px; }
.growing-wheel-stage::before { display:none; }
.growing-wheel-beam { position:absolute; z-index:2; top:0; left:50%; width:180px; height:calc(50% + 4px); transform:translateX(-50%); pointer-events:none; background:linear-gradient(to bottom,rgba(var(--public-brand-rgb),.13),rgba(var(--public-brand-rgb),.045) 54%,transparent 88%); filter:blur(17px); }
.growing-wheel { position:relative; width:min(100%,560px); aspect-ratio:1; margin:0 auto; }
.growing-wheel-svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.growing-wheel-bloom { fill:rgba(var(--public-brand-rgb),.05); filter:blur(30px); }
.growing-wheel-svg [data-wheel-segment] { fill:rgba(255,255,255,.035); stroke:rgba(255,255,255,.1); stroke-width:1.25; stroke-linejoin:round; stroke-linecap:round; vector-effect:non-scaling-stroke; transition:fill .35s,stroke .35s,filter .35s; }
.growing-wheel-svg [data-wheel-segment].is-active { fill:rgba(var(--public-brand-rgb),.2); stroke:rgba(238,253,255,.98); stroke-width:2.1; stroke-dasharray:24 9; animation:growing-wheel-run 2.2s linear infinite; filter:drop-shadow(0 0 7px rgba(223,252,255,.95)) drop-shadow(0 0 20px rgba(var(--public-brand-rgb),.75)); }
.growing-hub-bloom { fill:rgba(var(--public-brand-rgb),.3); filter:blur(22px); }
.growing-hub-disc { fill:rgba(10,10,10,.88); stroke:rgba(var(--public-brand-rgb),.55); stroke-width:1.5; }
.growing-hub-dots { fill:none; stroke:rgba(var(--public-brand-rgb),.25); stroke-width:1; stroke-dasharray:.1 8; stroke-linecap:round; }
.growing-hub-copy { position:absolute; inset:50% auto auto 50%; display:grid; width:164px; transform:translate(-50%,-50%); text-align:center; }
.growing-hub-copy span { color:var(--gb-cyan); font-size:.7rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }.growing-hub-copy b { margin-top:8px; font-size:1.05rem; line-height:1.15; }.growing-hub-copy small { margin-top:4px; color:#98aab0; font-size:.68rem; }
.growing-pillar { position:absolute; width:154px; padding:8px 10px; border:0; border-radius:10px; background:transparent; color:#d6e0e3; text-align:center; cursor:pointer; transition:background .2s,color .2s,transform .2s; }
.growing-pillar:hover,.growing-pillar:focus-visible,.growing-pillar.is-active { background:transparent; color:#f2fbfc; outline:none; }
.growing-pillar:focus-visible { box-shadow:0 0 0 2px var(--gb-cyan); }
.growing-pillar span,.growing-pillar b,.growing-pillar small { display:block; }.growing-pillar b { font-size:.82rem; }.growing-pillar small { margin-top:3px; color:#889aa1; font-size:.64rem; line-height:1.25; }.growing-pillar.is-active small { color:#c7e4e9; }
.growing-wheel-readout { max-width:560px; min-height:52px; margin:10px auto 0; color:#aab7bc; font-size:.9rem; line-height:1.55; text-align:center; }.growing-wheel-readout b { color:#eef5f6; }

.growing-section { padding:116px 0; border-top:1px solid rgba(255,255,255,.07); }.growing-section-head { max-width:790px; margin-bottom:52px; }.growing-section-head h2 { max-width:750px; margin:17px 0 0 !important; font-size:clamp(2.5rem,4.2vw,4.6rem) !important; letter-spacing:-.058em !important; line-height:.98 !important; }.growing-section-head h2 em { color:#96a4a9; font-style:normal; }.growing-section-head p { max-width:675px; margin:17px 0 0; color:var(--gb-muted); font-size:1.04rem; line-height:1.6; }
.growing-problem-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--gb-line); border-bottom:1px solid var(--gb-line); }.growing-problem-grid article { min-height:266px; padding:29px; border-right:1px solid var(--gb-line); }.growing-problem-grid article:last-child { border:0; }.growing-problem-grid article:hover { background:rgba(var(--public-brand-rgb),.055); }.growing-problem-grid span { color:var(--gb-cyan); font-size:.67rem; font-weight:800; letter-spacing:.14em; }.growing-problem-grid h3 { margin:28px 0 12px !important; font-size:1.2rem; }.growing-problem-grid p { margin:0; color:var(--gb-muted); line-height:1.58; }
.growing-shifts-section { background:rgba(255,255,255,.012); }.growing-shifts { display:grid; gap:14px; max-width:980px; }.growing-shifts article { display:grid; grid-template-columns:1fr auto 1fr; gap:25px; align-items:center; padding:27px 29px; border:1px solid var(--gb-line); border-radius:18px; background:rgba(255,255,255,.028); }.growing-shifts article:hover { border-color:rgba(var(--public-brand-rgb),.42); background:rgba(var(--public-brand-rgb),.05); }.growing-shifts small { color:#98a5ab; font-size:.63rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }.growing-shifts p { margin:9px 0 0; color:#b4c0c4; line-height:1.55; }.growing-shifts article > div:last-child small,.growing-shifts article > i { color:var(--gb-cyan); }.growing-shifts article > div:last-child p { color:#e0ebed; }
.growing-priority-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--gb-line); border-bottom:1px solid var(--gb-line); }.growing-priority-grid a { display:flex; flex-direction:column; min-height:272px; padding:29px; border-right:1px solid var(--gb-line); color:#eef5f6; text-decoration:none; transition:background .2s; }.growing-priority-grid a:last-child { border:0; }.growing-priority-grid a:hover { background:rgba(var(--public-brand-rgb),.07); }.growing-priority-grid a > span { color:var(--gb-cyan); font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.growing-priority-grid h3 { margin:28px 0 0 !important; font-size:1.22rem; line-height:1.38; }.growing-priority-grid b { margin-top:auto; padding-top:28px; font-size:.84rem; }.growing-priority-grid b i { margin-left:6px; color:var(--gb-cyan); }
.growing-quote { padding:116px max(24px,calc((100% - 1240px)/2)); border-top:1px solid rgba(255,255,255,.07); border-bottom:1px solid rgba(255,255,255,.07); }.growing-quote blockquote { max-width:1000px; margin:0; font-size:clamp(2.1rem,3.8vw,4.15rem); font-weight:750; letter-spacing:-.06em; line-height:1.02; }.growing-quote p { margin:28px 0 0; color:var(--gb-muted); }
.growing-faq-list { max-width:940px; }.growing-faq details { border-top:1px solid var(--gb-line); }.growing-faq details:last-child { border-bottom:1px solid var(--gb-line); }.growing-faq summary { padding:23px 0; color:#eef5f6; cursor:pointer; font-size:1.05rem; font-weight:700; }.growing-faq p { max-width:775px; margin:0; padding:0 0 23px; color:var(--gb-muted); line-height:1.6; }
.growing-final { padding:110px 0 124px; text-align:center; }.growing-final h2 { max-width:800px; margin:0 auto !important; font-size:clamp(2.5rem,4.4vw,4.7rem) !important; letter-spacing:-.058em !important; line-height:.98 !important; }.growing-final .growing-actions { justify-content:center; }
@keyframes growing-wheel-run { to { stroke-dashoffset:-56; } }
@media (prefers-reduced-motion:reduce) { .growing-wheel-svg [data-wheel-segment].is-active { animation:none; } }

/* Integrated AI: a compact MP-style proof layer beside the three operating rules. */
.growing-ai-layout { display:grid; grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr); gap:18px; }
.growing-ai-points { display:grid; gap:12px; }
.growing-ai-points a { display:flex; flex-direction:column; min-height:174px; padding:24px 25px; border:1px solid var(--gb-line); border-radius:16px; color:#eef5f6; text-decoration:none; background:rgba(255,255,255,.025); transition:border-color .2s,background .2s,transform .2s; }
.growing-ai-points a:hover { border-color:rgba(var(--public-brand-rgb),.5); background:rgba(var(--public-brand-rgb),.065); transform:translateY(-2px); }
.growing-ai-points span,.growing-ai-preview > span { color:var(--gb-cyan); font-size:.69rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.growing-ai-points h3 { margin:22px 0 0 !important; font-size:1.13rem; line-height:1.3; }
.growing-ai-points b { margin-top:auto; padding-top:20px; font-size:.8rem; }.growing-ai-points b i { margin-left:5px; color:var(--gb-cyan); }
.growing-ai-previews { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.growing-ai-preview { min-height:365px; padding:25px; border:1px solid rgba(var(--public-brand-rgb),.28); border-radius:18px; background:linear-gradient(145deg,rgba(var(--public-brand-rgb),.12),rgba(255,255,255,.025) 48%,rgba(255,255,255,.012)); box-shadow:0 18px 55px rgba(var(--public-brand-rgb),.08); }
.growing-ai-preview h3 { margin:19px 0 28px !important; font-size:1.22rem; }
.growing-mini-ui { padding:18px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(5,9,10,.58); }.growing-mini-ui i { display:block; height:5px; margin-bottom:15px; border-radius:99px; background:var(--gb-cyan); box-shadow:0 0 13px rgba(var(--public-brand-rgb),.65); }.growing-mini-ui small,.growing-mini-ui em { display:flex; justify-content:space-between; color:#a9b8bd; font-size:.75rem; font-style:normal; }.growing-mini-ui small b { color:#eef5f6; }.growing-mini-ui em { display:block; margin-top:21px; color:#d7e5e8; }.growing-ai-preview p { margin:26px 0 0; color:var(--gb-muted); font-size:.88rem; line-height:1.5; }
@media (max-width:980px) { .growing-ai-layout { grid-template-columns:1fr; } }
@media (max-width:640px) { .growing-ai-previews { grid-template-columns:1fr; }.growing-ai-preview { min-height:0; } }

@media (max-width:980px) { .growing-hero { min-height:0; }.growing-hero-grid { grid-template-columns:1fr; }.growing-wheel-stage { max-width:660px; min-height:600px; margin:0 auto; }.growing-problem-grid,.growing-priority-grid { grid-template-columns:1fr; }.growing-problem-grid article,.growing-priority-grid a { min-height:0; border-right:0; border-bottom:1px solid var(--gb-line); }.growing-problem-grid article:last-child,.growing-priority-grid a:last-child { border-bottom:0; } }
@media (max-width:640px) { .growing-shell { width:min(100% - 32px,1240px); }.growing-hero { padding:42px 0 70px; }.growing-hero h1 { font-size:clamp(2.9rem,12.5vw,4.1rem) !important; }.growing-wheel-stage { min-height:480px; padding-top:38px; }.growing-wheel { width:calc(100% - 32px); }.growing-pillar { width:112px; padding:4px; }.growing-pillar b { font-size:.68rem; }.growing-pillar small { display:none; }.growing-pillar-ops { right:-10%; }.growing-pillar-compliance { right:-7%; }.growing-pillar-performance { left:-7%; }.growing-pillar-hiring { left:-10%; }.growing-hub-copy { width:108px; }.growing-hub-copy b { font-size:.95rem; }.growing-hub-copy small { font-size:.55rem; }.growing-section { padding:76px 0; }.growing-shifts article { grid-template-columns:1fr; gap:14px; }.growing-shifts article > i { transform:rotate(90deg); }.growing-quote { padding:76px 16px; } }
