﻿/* Business template: one identity, a personal experience and a clear next step. */
.business-welcome {padding-block:clamp(56px,8vw,112px);background:linear-gradient(155deg,#fffaf0,#f5f2e9)}
.business-welcome-copy {max-width:1000px;margin:auto;text-align:center}
.business-welcome h2 {margin:18px 0 24px}
.business-welcome .lede {max-width:750px;margin:0 auto 20px}
.business-welcome-copy>p:last-of-type{color:var(--muted);font-size:15px}
.business-paths {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:36px;text-align:left}
.business-paths a {display:block;padding:24px;border:1px solid rgba(160,126,66,.24);border-radius:18px;background:rgba(255,255,255,.72);color:var(--ink);transition:transform .2s,border-color .2s,box-shadow .2s}
.business-paths a:hover {transform:translateY(-4px);border-color:#b88c36;box-shadow:0 12px 30px -20px #765b26}
.business-paths span {display:block;font-size:13px;color:var(--muted);margin-bottom:10px}
.business-paths strong {display:flex;justify-content:space-between;gap:8px;font-size:20px;font-weight:500}
.business-paths i {font-style:normal;color:#9b721e}
.hero-business-label {color:#fff6db;text-shadow:0 2px 12px #000;letter-spacing:.08em;font-size:13px;margin:0 auto 16px;text-align:center}
.programme-intro {padding-block:64px}.programme-intro .container {max-width:1000px}.programme-intro .eyebrow {display:block;margin:32px 0 18px}.programme-intro h2 {margin-bottom:22px}.programme-intro .lede {max-width:720px}.programme-intro nav {margin-top:28px}
.home-film #programmes {scroll-margin-top:110px}.home-film #programmes .offer {display:flex;flex-direction:column}.home-film #programmes .more-link {margin-top:auto;padding-top:24px}
:where(a,button,input,select,textarea,summary):focus-visible {outline:3px solid #aa7718;outline-offset:4px}
.form-status {color:#37564b;margin:12px 0}.no-script-note {padding-block:36px}
.js .reveal {opacity:1;transform:none} /* Readable even when an optional animation fails. */
.hero.hero-golden.hero-film .hero-actions>.btn,.hero.hero-golden.hero-film [data-sample-toggle][data-playing="true"] {min-height:44px}
@media(max-width:991.98px){html:not(.js) .menu {position:static;display:flex;flex-wrap:wrap;padding:16px;transform:none;opacity:1;visibility:visible}html:not(.js) .nav-inner {flex-wrap:wrap}html:not(.js) .menu-btn {display:none}}
@media(max-width:640px){.business-paths {grid-template-columns:1fr;gap:10px;margin-top:28px}.business-paths a {padding:18px 20px}.business-paths span {margin-bottom:6px}.business-paths strong {font-size:18px}.programme-intro {padding-block:40px}.programme-intro h2 {font-size:clamp(34px,9vw,48px)}.programme-intro .lede {font-size:17px}.hero-business-label {font-size:11px;letter-spacing:.04em;max-width:260px}.hero.hero-golden.hero-film .hero-copy .hero-actions>.btn {min-height:44px}.business-welcome h2 {font-size:clamp(34px,10vw,50px)}}
@media(prefers-reduced-motion:reduce){.business-paths a {transition:none}.business-paths a:hover{transform:none}html {scroll-behavior:auto}}
@media(max-width:640px){.nav-cta .btn-ghost,body.business-film-page .nav-cta .btn-ghost{display:inline-flex}.nav-cta .btn{min-height:44px}.nav .menu-btn{width:44px;height:44px;flex-shrink:0}}
@media(max-width:380px){.nav .container{width:calc(100% - 24px)}.nav-inner{gap:6px}.nav .brand{gap:6px}.nav .brand-mark{width:24px;height:24px}.nav .brand-name{font-size:14px;letter-spacing:.035em}.nav .brand-tag{font-size:6px;letter-spacing:.2em}.nav-cta{gap:4px}.nav-cta .btn.btn-sm{font-size:11.5px;padding-inline:8px}.nav .menu-btn{width:40px}.nav-cta .btn:not(.btn-sm){font-size:11.5px;padding-inline:8px}}
@media(max-width:460px){.nav .container{width:calc(100% - 24px)}.nav .brand-text{display:grid}.nav-inner{gap:6px}.nav .brand{gap:6px}.nav .brand-mark{width:24px;height:24px}.nav .brand-name{font-size:14px;letter-spacing:.035em}.nav .brand-tag{font-size:6px;letter-spacing:.2em}.nav-cta{gap:4px}.nav-cta .btn.btn-sm{font-size:11.5px;padding-inline:8px}.nav .menu-btn{width:40px}}

/* Keep the contact form level with the complete stack of contact options. */
@media(min-width:992px){
 .contact-page .contact-grid{align-items:stretch}
 .contact-page .contact-card{display:flex;flex-direction:column}
 .contact-page #contactForm{display:flex;flex:1;flex-direction:column}
 .contact-page #contactForm>.field:has(textarea){flex:1;grid-template-rows:auto 1fr}
 .contact-page #contactForm textarea{height:100%;min-height:180px}
 .contact-page #contactForm>.btn{align-self:flex-start}
 .contact-page .contact-side{align-content:stretch}
}
.contact-page .contact-card:hover,.contact-page .contact-side .card:hover{transform:none}

/* Programme details continue in the homepage, with the established Daybreak palette. */
.programme-details {
  --ink: #1e2a26; --ink-2: #34433d; --muted: #5e6b65; --line: #e2e6dd;
  --paper: #f6f3ec; --cream: #edf1ea; --peach: #fbeed6; --lav: #e3ede6;
  --gold: #a46a12; --violet: #17694a; --coral: #23915f;
  --dawn: linear-gradient(90deg, #0e3b2c 0%, #23915f 55%, #e9a23b 100%);
  --dawn-soft: linear-gradient(160deg, #e3ede6 0%, #f1f2ea 55%, #fbf0da 100%);
  --frame: linear-gradient(180deg, #23915f 0%, #e9a23b 70%, #fbf0da 100%);
  --shadow: 0 1px 2px rgba(14, 59, 44, .05), 0 12px 32px -12px rgba(14, 59, 44, .14);
  --shadow-lg: 0 30px 80px -30px rgba(14, 59, 44, .38);
  --glow-a: #cfe6d8; --glow-b: #ffe0a0;
}
.programme-details .grad-text { background-image: linear-gradient(90deg, #0e3b2c 0%, #23915f 55%, #c98a1e 100%); }
.programme-details .hero-grid { background-image: linear-gradient(rgba(14, 59, 44, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(14, 59, 44, .06) 1px, transparent 1px); }
.programme-details .sun { background: radial-gradient(circle, #fff6d8 0%, #ffe08a 35%, rgba(233, 162, 59, 0) 70%); }
.programme-details .btn-dark { background: #0e3b2c; }
.programme-details .btn-dark:hover { box-shadow: 0 16px 30px -12px rgba(35, 145, 95, .55); }
.programme-details .btn-sun { background: linear-gradient(135deg, #ffd25b, #e9a23b); color: #1e2a26; box-shadow: 0 12px 28px -12px rgba(233, 162, 59, .8); }
.programme-details .partners-band { background: linear-gradient(120deg, #0a2e22 0%, #0e3b2c 42%, #1f6b4e 78%, #c99a3e 100%); }
.programme-details .partners-band .eyebrow { color: #f2c46a; }
.programme-details .mini-dark { background: #0e3b2c; border-color: #0e3b2c; }
.programme-details .calc .result, .programme-details .w-sleep { background: linear-gradient(150deg, #0a2e22, #0e3b2c 58%, #1f6b4e); }
.programme-details .ring > div { background: #0c3326; }
.programme-details .final::before { background: linear-gradient(180deg, rgba(10, 46, 34, .25), rgba(10, 46, 34, .75)); }
.programme-details .footer { background: #ecefe7; }
.programme-details .footer-grid > div:first-child, .programme-details .footer-bottom { border-color: #dbe0d6; }
.programme-details .price-badge { background: linear-gradient(135deg, #fbf0da, #e3ede6); color: #7a5410; }
.programme-details .bars div span { background: linear-gradient(180deg, #7fcfa7, #23915f); }
.programme-details .bars div:nth-child(n+3) span { background: linear-gradient(180deg, #ffd27a, #e9a23b); }
.programme-details .field input, .programme-details .field select, .programme-details .field textarea { background: #fbfaf6; border-color: #d9ded3; }
.programme-details .field input:focus, .programme-details .field select:focus, .programme-details .field textarea:focus { box-shadow: 0 0 0 4px rgba(35, 145, 95, .16); }
.programme-details .waves i { border-color: rgba(35, 145, 95, .45); }
.programme-details .flow-steps button[aria-pressed="true"] { box-shadow: 0 16px 34px -18px rgba(14, 59, 44, .5); }


.programme-details{padding-top:32px;background:linear-gradient(180deg,#f6f3ec,#fffcf7);border-top:1px solid #e2e6dd;border-bottom:1px solid #e2e6dd;margin-bottom:72px}
.programme-return{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:40px}
.programme-details .section{padding-block:64px}
.programme-details #solutions{scroll-margin-top:112px}
.programme-details .programme-sources summary{cursor:pointer;font-weight:500;margin-bottom:16px;color:var(--ink)}
.business-paths a.is-selected,#programmes .offer.is-selected{border-color:#a77c28;box-shadow:0 0 0 2px #d6a22e40}
html:not(.js) #programme-details[hidden]{display:block!important}
#experience{scroll-margin-top:0}
@media(min-width:992px){.programme-details #talk .contact-grid{align-items:stretch}.programme-details .contact-card{display:flex;flex-direction:column}.programme-details #employerForm{display:flex;flex:1;flex-direction:column}.programme-details #employerForm>.field:has(textarea){flex:1;grid-template-rows:auto 1fr}.programme-details #employerForm>.btn{align-self:flex-start}}
@media(max-width:640px){.programme-return{align-items:flex-start;flex-direction:column}.programme-details{padding-top:24px}.programme-details .section{padding-block:48px}}

html:not(.js) [data-sample-toggle],html:not(.js) [data-open-brand-film]{display:none}
html:not(.js) .nav{position:relative}html:not(.js) .nav-inner{height:auto;min-height:76px}html:not(.js) .menu{order:3;width:100%}

.programme-details h2[tabindex="-1"]:focus,#programmes h2[tabindex="-1"]:focus{outline:none}

/* Recovery evidence: a consistent grid, with room for the before/after metric. */
.recovery-evidence-grid{align-items:stretch}
.recovery-evidence-grid .stats-row{grid-auto-rows:1fr;align-items:stretch}
.recovery-evidence-grid .stats-row .card{display:flex;flex-direction:column;align-items:flex-start}
.recovery-evidence-grid .stats-row .card>b{min-height:48px;display:flex;align-items:center;margin-bottom:12px;font-size:clamp(30px,3vw,40px)}
.recovery-evidence-grid .stats-row .card>b.recovery-sprint{font-size:clamp(24px,2.2vw,30px);white-space:nowrap;gap:6px}
.recovery-sprint small{font-size:.6em;margin-left:2px}
.recovery-sprint .metric-arrow{font-size:.7em}
.recovery-evidence-grid .stats-row p{margin:0;line-height:1.6}
.programme-details .card:hover{transform:none}
.programme-details [id]{scroll-margin-top:112px}

/* Keep business identity present at the compact desktop breakpoint. */
@media(min-width:992px) and (max-width:1239px){.nav .brand-text{display:grid}.nav .brand-name{font-size:20px}.nav .brand-mark{width:32px;height:32px}.nav-inner{gap:14px}.nav .menu{gap:14px}.nav .menu a{font-size:14px}.nav-cta .btn-sm{padding-inline:12px}}

@media(max-width:991.98px){.menu{transition:transform .25s ease,opacity .25s ease,visibility 0s}}
