/* Owry Founding Partner pages. Tokens and components mirror the owry.ai homepage. */
:root{
  --brand-blue:#1b4dff; --brand-blue-hover:#0a37d6; --on-brand:#fff;
  --surface:#f9f9f7; --surface-raised:#fff; --ink:#1a1a1a; --ink-muted:#6b6b6b;
  --border:#e4e4e0; --border-charcoal:#2e2e2e; --muted-num:#9a9a9a; --hairline-blue:rgba(255,255,255,0.3);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--surface);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
img{max-width:100%}
a{color:var(--brand-blue);text-decoration:none}
a:hover{color:var(--brand-blue-hover)}
::selection{background:var(--brand-blue);color:#fff}
:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}
h1,h2,h3,p,ol,ul{margin:0}

.container{max-width:1160px;margin:0 auto;padding:0 clamp(24px,5vw,48px)}
.section{padding:clamp(72px,9vw,120px) 0}
.label{font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-muted)}
.label-blue{color:var(--brand-blue)}
.h2{font-size:clamp(32px,4.4vw,48px);line-height:1.1;font-weight:700;letter-spacing:-0.01em;text-wrap:balance}
.lead{margin-top:20px;font-size:18px;line-height:1.6;color:var(--ink-muted);max-width:60ch;text-wrap:pretty}

.btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 22px;border-radius:6px;font:600 15px/1 Inter,sans-serif;background:var(--brand-blue);color:#fff;border:1px solid var(--brand-blue);cursor:pointer;transition:background 150ms,border-color 150ms}
.btn:hover{background:var(--brand-blue-hover);border-color:var(--brand-blue-hover);color:#fff;text-decoration:none}
.btn:disabled{opacity:.6;cursor:default}
.btn-dark{height:36px;padding:0 18px;font-size:14px;background:var(--ink);border-color:var(--ink)}
.btn-dark:hover{background:var(--brand-blue-hover);border-color:var(--brand-blue-hover)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--border)}
.btn-ghost:hover{background:#fff;color:var(--ink);border-color:var(--ink)}
.btn-block{width:100%}

/* Header */
header{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--border)}
.nav{max-width:1160px;margin:0 auto;padding:14px clamp(24px,5vw,48px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:500}
.nav-links a:not(.btn){color:var(--ink)}
.nav-links a:not(.btn):hover{color:var(--brand-blue-hover)}
.nav-links .lang{color:var(--ink-muted)!important;font-weight:600}
@media(max-width:760px){ .nav-links a.hide-sm{display:none} .nav-links{gap:16px} }

/* Hero */
.hero{padding:clamp(48px,7vw,96px) 0 clamp(56px,7vw,88px)}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(24px,4vw,56px);align-items:end}
.hero-main{grid-column:span 2;min-width:0}
h1.hero-title{margin-top:20px;font-size:clamp(40px,5.6vw,72px);line-height:1.02;font-weight:600;letter-spacing:-0.02em;text-wrap:balance}
.hero-aside{max-width:400px;padding-bottom:4px}
.hero-aside p{font-size:16px;line-height:1.6;text-wrap:pretty}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.spots{display:flex;gap:1px;margin-top:clamp(40px,5vw,64px);background:var(--border);border:1px solid var(--border);border-radius:6px;overflow:hidden;flex-wrap:wrap}
.spot{flex:1 1 220px;background:#fff;padding:20px 24px}
.spot .big{font-size:32px;font-weight:700;letter-spacing:-0.01em;line-height:1.1}
.spot .big span{color:var(--brand-blue)}
.spot .sm{margin-top:4px;font-size:14px;color:var(--ink-muted)}

/* Dark band */
.band-dark{background:var(--ink);color:#fff}
.band-dark .label{color:var(--muted-num)}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(24px,5vw,64px);align-items:start}
.why-points{list-style:none;padding:0}
.why-points li{padding:18px 0;border-top:1px solid var(--border-charcoal);font-size:16px;line-height:1.55;color:#d6d6d2}
.why-points li:last-child{border-bottom:1px solid var(--border-charcoal)}
.why-points strong{color:#fff;font-weight:600}

/* Tiers */
.hairgrid{display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:6px;overflow:hidden;margin-top:56px}
.tiers{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.tier{background:#fff;padding:clamp(28px,3.5vw,40px);display:flex;flex-direction:column}
.tier-blue{background:var(--brand-blue);color:#fff}
.tier-blue .label{color:rgba(255,255,255,.75)}
.tier-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.tier-count{font-size:13px;font-weight:600;color:var(--brand-blue)}
.tier-blue .tier-count{color:#fff}
.tier h3{margin-top:16px;font-size:28px;line-height:1.15;font-weight:700}
.tier .price{margin-top:20px;font-size:clamp(44px,5vw,56px);font-weight:700;letter-spacing:-0.02em;line-height:1}
.tier .price small{display:block;margin-top:8px;font-size:15px;font-weight:500;letter-spacing:0;color:var(--ink-muted)}
.tier-blue .price small{color:rgba(255,255,255,.8)}
.tier .how{margin-top:20px;font-size:15px;line-height:1.55;color:var(--ink-muted)}
.tier-blue .how{color:rgba(255,255,255,.85)}
.benefits{list-style:none;padding:0;margin-top:24px}
.benefits li{display:grid;grid-template-columns:28px 1fr;padding:12px 0;border-top:1px solid var(--border);font-size:15px;line-height:1.5}
.tier-blue .benefits li{border-top-color:var(--hairline-blue)}
.benefits li::before{content:"✓";font-weight:700;color:var(--brand-blue)}
.tier-blue .benefits li::before{color:#fff}
.tier .btn{margin-top:auto}
.tier .tier-foot{margin-top:28px}
.tier-blue .btn{background:#fff;color:var(--brand-blue);border-color:#fff}
.tier-blue .btn:hover{background:var(--surface);color:var(--brand-blue-hover)}
.ref{margin-top:20px;font-size:14px;line-height:1.5;color:var(--ink-muted)}
.ref a{color:var(--ink);text-decoration:underline}

/* Steps */
.start-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));border-top:2px solid var(--ink);margin-top:40px}
.start-steps .st{padding:20px 24px 0 0}
.start-steps .num{font-size:13px;font-weight:600;color:var(--brand-blue)}
.start-steps .t{margin-top:10px;font-size:17px;font-weight:600;line-height:1.35}
.start-steps .d{margin-top:6px;font-size:15px;line-height:1.55;color:var(--ink-muted)}

/* Control */
.control{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.cell{background:#fff;padding:32px}
.cell h3{font-size:20px;font-weight:700;line-height:1.3}
.cell p{margin-top:8px;font-size:16px;line-height:1.6;color:var(--ink-muted)}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(24px,5vw,64px)}
.faq-list{grid-column:span 2}
details.faq{border-top:1px solid var(--border)}
details.faq:last-child{border-bottom:1px solid var(--border)}
details.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:baseline;padding:22px 0;font-size:18px;font-weight:600}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary .plus{flex:none;color:var(--brand-blue);font-weight:700;transition:transform 150ms}
details.faq[open] summary .plus{transform:rotate(45deg)}
details.faq p{margin:0 0 22px;font-size:16px;line-height:1.6;color:var(--ink-muted);max-width:70ch}

/* Join form */
.contact{background:var(--brand-blue);color:#fff}
.join-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:clamp(32px,6vw,72px);align-items:start}
.join-intro p{margin-top:16px;font-size:17px;line-height:1.6;max-width:44ch}
.join-intro .fine{margin-top:32px;font-size:13px;line-height:1.55;color:rgba(255,255,255,.75);max-width:48ch}
.join-intro a{color:#fff;text-decoration:underline}
.form-panel{background:#fff;color:var(--ink);padding:clamp(24px,3.5vw,36px);border-radius:6px}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}
.field{margin-top:18px;min-width:0}
.field:first-child{margin-top:0}
.form-row .field{margin-top:18px}
.field label,.field legend{display:block;font-size:14px;font-weight:600;margin-bottom:8px;padding:0}
.field .opt{font-weight:400;color:var(--ink-muted)}
.field input[type=text],.field input[type=email],.field select,.field textarea{width:100%;height:44px;padding:0 14px;border:1px solid var(--border);border-radius:6px;font:400 15px Inter,sans-serif;color:var(--ink);background:#fff}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-muted) 50%),linear-gradient(135deg,var(--ink-muted) 50%,transparent 50%);background-position:calc(100% - 20px) 19px,calc(100% - 15px) 19px;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.field textarea{height:88px;padding:10px 14px;resize:vertical;line-height:1.5}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px;border-color:var(--brand-blue)}
.field [aria-invalid=true]{border-color:var(--brand-blue);box-shadow:inset 0 0 0 1px var(--brand-blue)}
fieldset.field{border:0;margin-left:0;margin-right:0;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip span{display:inline-flex;align-items:center;height:36px;padding:0 14px;border:1px solid var(--border);border-radius:9999px;font-size:14px;font-weight:500;cursor:pointer;background:#fff;transition:border-color 120ms,background 120ms,color 120ms}
.chip span:hover{border-color:var(--ink)}
.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.chip input:focus-visible+span{outline:2px solid var(--brand-blue);outline-offset:2px}
.more{margin-top:22px;border-top:1px solid var(--border)}
.more summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:16px 0 0;font-size:14px;font-weight:600;color:var(--ink)}
.more summary::-webkit-details-marker{display:none}
.more summary .plus{color:var(--brand-blue);transition:transform 150ms}
.more[open] summary .plus{transform:rotate(45deg)}
.more summary .opt{font-weight:400;color:var(--ink-muted)}
.form-error{margin-top:12px;font-size:14px;color:var(--brand-blue);font-weight:600}
.form-panel .btn{margin-top:22px}
.form-panel .hint{margin-top:10px;font-size:13px;color:var(--ink-muted);text-align:center}
.form-ok h2{font-size:26px;font-weight:700;line-height:1.2}
.form-ok p{color:var(--ink-muted);font-size:16px;margin-top:10px}
.form-ok ol{margin-top:20px;padding-left:20px;color:var(--ink);font-size:15px;line-height:1.6}
.form-ok li{padding:4px 0}

/* Footer */
footer{background:var(--ink);color:#fff}
.footer-inner{max-width:1160px;margin:0 auto;padding:40px clamp(24px,5vw,48px);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}
.footer-links{display:flex;gap:28px;font-size:14px;font-weight:500;flex-wrap:wrap}
.footer-links a{color:#fff}
.footer-links a:hover{color:#fff;text-decoration:underline}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
