/* Ortaklık Akademisi — refined design layer (loaded after editorial.css + motion.css) */
@import url("../fonts/fonts.css");

:root{
  --navy:#16372f;--navy2:#0f2822;--forest:#16372f;
  --gold:#9a7a48;--gold2:#d6c193;--champagne:#e7d9b8;
  --cream:#f3f0e8;--paper:#faf8f3;--stone:#e6e1d6;--stone2:#cfc8b8;
  --ink:#1c2f2a;--muted:#5c6762;--line:#e0dbcf;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --gutter:clamp(20px,5vw,72px);
  --section:clamp(72px,9vw,128px);
  --ease:cubic-bezier(.22,.61,.36,1);
}

body{font-family:var(--sans);font-size:16.5px;line-height:1.72;background:var(--paper);color:var(--ink);text-rendering:optimizeLegibility}
p{color:var(--muted)}
h1,h2,h3,.section-title h2,.section-head h2{font-family:var(--serif);font-weight:500;letter-spacing:-.012em;color:inherit}
h1{font-size:clamp(42px,5.4vw,80px);line-height:1.04}
h2{font-size:clamp(34px,3.6vw,54px);line-height:1.08}
h3{font-family:var(--serif);font-size:clamp(22px,1.9vw,27px);line-height:1.22;font-weight:600;letter-spacing:-.005em}
.container{width:min(1200px,calc(100% - 2*var(--gutter)))}
.section,.about-new,.problems,.contact,.learn{padding:var(--section) 0}

/* Eyebrows: thin gold rule + letterspaced label */
.eyebrow,.hero-seo-label,.about-new-kicker,.contact-modern-title>small{font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.2em;color:var(--gold);display:inline-flex;align-items:center;gap:14px}
.eyebrow:before,.hero-seo-label:before,.about-new-kicker:before,.contact-modern-title>small:before{content:"";width:28px;height:1px;background:currentColor;opacity:.8}

/* Header */
.site-header,.header{background:color-mix(in oklab,var(--paper) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.2) blur(10px)}
.nav{height:84px;transition:height .35s var(--ease)}
.site-header.is-scrolled .nav,.header.is-scrolled .nav{height:70px}
.brand-horizontal-copy strong,.footer-brand-copy strong{font-family:var(--sans);font-weight:700;letter-spacing:.16em;font-size:13.5px}
.brand-horizontal-copy em,.footer-brand-copy em{font-family:var(--sans);letter-spacing:.32em;font-size:11px}
.nav-link,.nav-links>a,.edu-nav-trigger,.consult-trigger,.training-trigger{font-family:var(--sans);font-size:13.5px;font-weight:500;letter-spacing:.01em;padding:28px 0}
.nav-main,.nav-links{gap:34px}
.training-dropdown,.consult-dropdown,.edu-nav-dropdown{background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold);box-shadow:0 24px 48px -18px #0f282233;padding:8px}
.training-dropdown a,.edu-nav-dropdown a,.consult-dropdown a{padding:13px 14px;transition:background .2s,padding-left .25s var(--ease)}
.training-dropdown a:hover,.edu-nav-dropdown a:hover,.consult-dropdown a:hover{background:var(--cream);padding-left:20px;color:var(--ink)}

/* Buttons */
.btn,.cta-btn,.program-cta,.about-learn-btn,.tuesday-next-btn,.submit,.contact-submit{font-family:var(--sans);font-weight:600;letter-spacing:.04em;border-radius:2px;min-height:52px;padding-inline:28px;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-color .25s,color .25s,border-color .25s}
.btn:hover,.cta-btn:hover,.program-cta:hover,.about-learn-btn:hover,.tuesday-next-btn:hover,.submit:hover,.contact-submit:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px #0f282266}
.btn:active,.submit:active,.contact-submit:active{transform:translateY(0)}

/* Home hero: globe right, dark readable veil left */
.home .hero{min-height:min(860px,calc(100svh - 84px));display:flex;flex-direction:column;justify-content:center;background:var(--navy2)}
.home .hero h1{font-size:clamp(46px,6vw,88px);line-height:1.02;letter-spacing:-.015em}
.home .hero h1 span{color:var(--champagne);font-style:italic}
.home .hero:after{background:linear-gradient(90deg,#0b1f1a 0%,#0b1f1aeb 30%,#0b1f1a8c 52%,#0b1f1a1a 78%,transparent 100%),linear-gradient(0deg,#0b1f1acc 0%,transparent 35%)!important}

/* Cards, grids: crisp, square, balanced */
.card,.module,.value,.format-card,.fit-card,.trainer-card,.learn-card,.teacher,.benefit,.upcoming-item,.problem,.step,.vm-code-card{border-radius:2px;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s}
.card:hover,.module:hover,.value:hover,.format-card:hover,.fit-card:hover,.learn-card:hover,.upcoming-item:hover,.problem:hover,.step:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px #0f282240;border-color:var(--stone2)}
.problem{background:var(--paper)}

/* Imagery */
.train-hero-photo img,.about-hero img,[class*=photo] img,figure img{border-radius:2px;aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:0 30px 60px -30px #0f282259}
.train-hero-photo,[class*=photo]{position:relative}
.train-hero-photo:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--gold2);z-index:-1;opacity:.7}
.train-hero,.about-hero{isolation:isolate}

/* Stats band */
.stat strong,[data-count]{font-family:var(--serif);font-weight:500}

/* Forms */
input,select,textarea{border-radius:2px}
input:focus,select:focus,textarea:focus{border-color:var(--gold)!important;box-shadow:0 0 0 3px #9a7a4826;outline:none}
.form-status.success{color:#1f6a4a}.form-status.error{color:#a3352b}

/* Footer */
footer,.footer{font-size:14.5px}

/* Focus visibility */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Page fade-in (opacity only, never hides content without CSS animation support) */
@media (prefers-reduced-motion:no-preference){
  body{animation:oa-page-in .5s var(--ease) both}
  @keyframes oa-page-in{from{opacity:0}to{opacity:1}}
}

@media (max-width:1000px){
  .nav{height:72px}
  .home .hero{min-height:auto;padding-block:96px 72px}
  .home .hero:after{background:linear-gradient(180deg,#0b1f1a99 0%,#0b1f1ad9 55%,#0b1f1a 100%)!important}
  .train-hero-photo:before{inset:12px -12px -12px 12px}
}
@media (max-width:560px){
  body{font-size:16px}
  .home .hero h1{font-size:clamp(40px,11vw,52px)}
  .btn,.cta-btn,.submit,.contact-submit{width:100%;justify-content:center}
  .train-hero-photo:before{display:none}
}

/* Lining figures (Cormorant's old-style "1" reads like "I") and safe wrapping of long words */
body,h1,h2,h3,h4{font-variant-numeric:lining-nums proportional-nums;font-feature-settings:"lnum" 1}
h1,h2,h3{overflow-wrap:break-word;hyphens:auto}
/* Numerals in the sans face: Cormorant's "1" is ambiguous at display sizes */
.statement-equation,.stat strong,[data-count],.datebox b,[data-training-day],[data-training-time],.upcoming-item b,.upcoming-item strong{font-family:var(--sans)!important;font-weight:300;letter-spacing:-.02em}

/* Training page: duration/format + trainer block, balanced two columns */
.format-section{padding:var(--section) 0;background:var(--paper)}
.format-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)!important;gap:28px;align-items:stretch;width:min(1200px,calc(100% - 2*var(--gutter)))}
.format-card{padding:clamp(28px,3.4vw,48px);border:1px solid var(--line);background:#fff;border-radius:2px}
.format-card h3{font-size:clamp(28px,2.6vw,38px);margin:14px 0 26px}
.format-card dl{margin:0;display:grid;gap:0}
.format-card dl div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}
.format-card dl div:last-child{border-bottom:1px solid var(--line)}
.format-card dt{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);padding-top:3px}
.format-card dd{margin:0;color:var(--ink);font-size:15.5px;line-height:1.55}
.trainer-card{border-left:2px solid var(--gold)}
.trainer-card .teacher-bio p{font-size:15px;line-height:1.75}
@media(max-width:980px){.format-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){.format-card dl div{grid-template-columns:1fr;gap:4px}}
