/* ObliqueTech inner pages: About and Contact. Uses the tokens from main.css (one blue: --ot-accent). */
.ot-pg{--pg-w:1200px;--pg-r:16px;color:var(--ot-ink);font-family:var(--ot-font)}
.ot-pg *{box-sizing:border-box}
.ot-pg__wrap{width:min(100% - 3rem,var(--pg-w));margin-inline:auto}
.ot-pg section{padding-block:clamp(3rem,7vw,5.5rem)}
.ot-pg p{font-size:.875rem;line-height:1.7;color:var(--ot-muted-2);margin:0 0 1rem}
.ot-pg h1,.ot-pg h2,.ot-pg h3{color:#fff;letter-spacing:-.025em;font-weight:700}
.ot-pg h1{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.05;margin:0 0 1.25rem}
.ot-pg h2{font-size:clamp(1.75rem,3.4vw,2.5rem);line-height:1.1;margin:0 0 1rem}
.ot-pg h3{font-size:1.125rem;line-height:1.3;margin:0 0 .6rem}
.ot-pg a{text-underline-offset:3px}
.ot-pg__lead{font-size:1.0625rem!important;line-height:1.65!important;max-width:44rem;color:var(--ot-muted-2)}
.ot-pg__eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 1.25rem;padding:.4rem .9rem;border:1px solid var(--ot-line-2);border-radius:999px;background:rgba(255,255,255,.04);font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ot-muted-2)}
.ot-pg__eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:#fff}
.ot-pg__head{max-width:46rem;margin-bottom:2.5rem}
.ot-pg__head p{font-size:.9375rem}
.ot-pg__alt{background:var(--ot-bg-alt);border-block:1px solid var(--ot-line)}

/* Hero */
.ot-pg__hero{position:relative;overflow:hidden;padding-top:clamp(3rem,8vw,6rem);padding-bottom:clamp(2.5rem,6vw,4.5rem)}
.ot-pg__hero::before{content:'';position:absolute;inset:-20% 0 auto 0;height:70%;background:radial-gradient(55% 60% at 30% 0,rgba(41,151,255,.1),transparent 70%);pointer-events:none}
.ot-pg__hero .ot-pg__wrap{position:relative}
.ot-pg__strip{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin-top:2rem;font-family:var(--ot-mono);font-size:.75rem;letter-spacing:.04em;color:var(--ot-ink);text-transform:uppercase}
.ot-pg__strip span{display:inline-flex;align-items:center;gap:.5rem}
.ot-pg__strip svg{width:16px;height:16px;color:var(--ot-accent)}
.ot-pg__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}

/* Buttons */
.ot-pg-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.75rem;border-radius:999px;border:1px solid transparent;font:500 .875rem/1 var(--ot-font);text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,transform .15s}
.ot-pg-btn:active{transform:scale(.97)}
.ot-pg-btn--primary{background:var(--ot-cta);color:#fff!important}
.ot-pg-btn--primary:hover{background:var(--ot-cta-hover)}
.ot-pg-btn--ghost{background:rgba(255,255,255,.06);border-color:var(--ot-line-2);color:#fff!important}
.ot-pg-btn--ghost:hover{background:rgba(255,255,255,.12)}
.ot-pg-btn svg{width:16px;height:16px}

/* Cards and grids */
.ot-grid{display:grid;gap:1rem}
.ot-grid--2{grid-template-columns:repeat(2,1fr)}
.ot-grid--3{grid-template-columns:repeat(3,1fr)}
.ot-grid--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1023px){.ot-grid--4{grid-template-columns:repeat(2,1fr)}.ot-grid--3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:699px){.ot-grid--2,.ot-grid--3,.ot-grid--4{grid-template-columns:1fr}}
.ot-card{display:flex;flex-direction:column;padding:1.5rem;border:1px solid var(--ot-line);border-radius:var(--pg-r);background:var(--ot-card);transition:border-color .2s,transform .2s}
.ot-card:hover{border-color:var(--ot-line-hover)}
.ot-card p:last-child{margin-bottom:0}
.ot-card__tag{margin-top:auto;padding-top:1rem;font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ot-muted)}
.ot-card__label{margin:0 0 .9rem;font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ot-accent)}
.ot-card__index{font-family:var(--ot-mono);font-size:.8125rem;color:var(--ot-accent);margin-bottom:1rem}
.ot-card ul{margin:0;padding:0;list-style:none;display:grid;gap:.4rem}
.ot-card li{font-family:var(--ot-mono);font-size:.75rem;color:var(--ot-muted-2)}
.ot-card li::before{content:'+ ';color:var(--ot-muted)}

/* Narrative split */
.ot-split{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:899px){.ot-split{grid-template-columns:1fr}}
.ot-split .ot-card{padding:clamp(1.5rem,3vw,2.25rem)}
.ot-split h3{font-size:1.375rem;line-height:1.25}

/* Metrics */
.ot-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:1rem;border:1px solid var(--ot-line);border-radius:var(--pg-r);background:var(--ot-card);overflow:hidden}
.ot-metrics>div{padding:1.5rem;border-right:1px solid var(--ot-line)}
.ot-metrics>div:last-child{border-right:0}
.ot-metrics strong{display:block;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1;letter-spacing:-.03em;color:#fff}
.ot-metrics span{display:block;margin-top:.5rem;font-size:.875rem;color:#fff}
.ot-metrics small{display:block;margin-top:.25rem;font-size:.75rem;color:var(--ot-muted)}
@media(max-width:899px){.ot-metrics{grid-template-columns:repeat(2,1fr)}.ot-metrics>div:nth-child(2){border-right:0}.ot-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--ot-line)}}
@media(max-width:479px){.ot-metrics{grid-template-columns:1fr}.ot-metrics>div{border-right:0;border-bottom:1px solid var(--ot-line)}.ot-metrics>div:last-child{border-bottom:0}}

/* Team list */
.ot-team{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
@media(max-width:899px){.ot-team{grid-template-columns:1fr}}
.ot-rows{display:grid;gap:1rem}
.ot-rows .ot-card{padding:1.25rem 1.5rem}

/* CTA band */
.ot-pg__cta{text-align:center}
.ot-pg__cta .ot-pg__wrap{max-width:52rem;padding:clamp(2rem,5vw,4rem) 1.5rem;border:1px solid var(--ot-line);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.ot-pg__cta p{margin-inline:auto;max-width:36rem}
.ot-pg__cta .ot-pg__actions{justify-content:center}
.ot-pg__note{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem;font-family:var(--ot-mono);font-size:.75rem;color:var(--ot-muted)}

/* Contact layout */
.ot-contact{display:grid;grid-template-columns:7fr 5fr;gap:1.5rem;align-items:start}
@media(max-width:1023px){.ot-contact{grid-template-columns:1fr}}
.ot-aside{display:grid;gap:1rem}
.ot-formcard{padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--ot-line);border-radius:20px;background:var(--ot-card)}
.ot-formcard__bar{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;padding:.7rem 1rem;border:1px solid var(--ot-line);border-radius:10px;background:#000;font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ot-muted)}
.ot-formcard__bar b{font-weight:500;color:#fff}
.ot-form{display:grid;gap:1rem}
.ot-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:599px){.ot-form__row{grid-template-columns:1fr}}
.ot-field{display:grid;gap:.4rem}
.ot-field>label,.ot-field>span.ot-lbl{font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ot-muted-2)}
.ot-field em{font-style:normal;color:var(--ot-muted)}
.ot-input,.ot-select,.ot-textarea{width:100%;padding:.7rem .9rem;border:1px solid var(--ot-line-2);border-radius:10px;background:#000;color:var(--ot-ink);font:400 .875rem/1.5 var(--ot-font);transition:border-color .2s,box-shadow .2s}
.ot-textarea{min-height:130px;resize:vertical}
.ot-input::placeholder,.ot-textarea::placeholder{color:#5c5c63}
.ot-input:focus,.ot-select:focus,.ot-textarea:focus{outline:0;border-color:var(--ot-accent);box-shadow:0 0 0 3px rgba(41,151,255,.2)}
.ot-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%2386868b' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.5rem}
.ot-budget{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}
@media(max-width:599px){.ot-budget{grid-template-columns:repeat(2,1fr)}}
.ot-budget label{position:relative;cursor:pointer}
.ot-budget input{position:absolute;opacity:0;inset:0;cursor:pointer}
.ot-budget span{display:block;padding:.65rem .5rem;border:1px solid var(--ot-line-2);border-radius:10px;background:#000;text-align:center;font-family:var(--ot-mono);font-size:.75rem;color:var(--ot-muted-2);transition:border-color .2s,background .2s,color .2s}
.ot-budget label:hover span{border-color:var(--ot-line-hover)}
.ot-budget input:checked+span{border-color:var(--ot-accent);background:rgba(41,151,255,.12);color:#fff}
.ot-budget input:focus-visible+span{outline:2px solid var(--ot-accent);outline-offset:2px}
.ot-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ot-form__note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0!important;font-size:.75rem!important;color:var(--ot-muted)!important;text-align:center}
.ot-form__note svg{width:14px;height:14px;flex:none}
.ot-alert{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1.25rem;padding:1rem 1.1rem;border-radius:12px;border:1px solid var(--ot-line-2);background:#000;font-size:.875rem;line-height:1.6;color:#fff}
.ot-alert--ok{border-color:rgba(41,151,255,.5)}
.ot-alert--err{border-color:rgba(255,99,99,.55)}
.ot-alert svg{width:18px;height:18px;flex:none;margin-top:2px}
.ot-alert--ok svg{color:var(--ot-accent)}
.ot-alert--err svg{color:#ff6363}

/* Aside cards */
.ot-aside .ot-card{padding:1.5rem}
.ot-aside h3{margin:0}
.ot-mail{display:flex;flex-direction:column;gap:.15rem;margin-top:1rem;padding:.9rem 1rem;border:1px solid var(--ot-line);border-radius:12px;background:#000}
.ot-mail span{font-family:var(--ot-mono);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ot-muted)}
.ot-mail a{font-family:var(--ot-mono);font-size:.8125rem;word-break:break-all}
.ot-path{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.75rem;padding:.9rem 1rem;border:1px solid var(--ot-line);border-radius:12px;background:#000;text-decoration:none;transition:border-color .2s}
.ot-path:hover{border-color:var(--ot-line-hover)}
.ot-path strong{display:block;font-size:.875rem;font-weight:600;color:#fff}
.ot-path small{display:block;margin-top:.15rem;font-size:.75rem;color:var(--ot-muted)}
.ot-path svg{width:16px;height:16px;flex:none;color:var(--ot-muted)}
.ot-check{margin:1rem 0 0;padding:0;list-style:none;display:grid;gap:.75rem}
.ot-check li{display:flex;gap:.6rem;font-family:var(--ot-font)!important;font-size:.8125rem!important;line-height:1.6;color:var(--ot-muted-2)!important}
.ot-check li::before{content:none!important}
.ot-check svg{width:16px;height:16px;flex:none;margin-top:3px;color:var(--ot-accent)}
.ot-check strong{color:#fff;font-weight:600}

/* FAQ */
.ot-faq{display:grid;grid-template-columns:4fr 8fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}
@media(max-width:899px){.ot-faq{grid-template-columns:1fr}}
.ot-faq__list{display:grid;gap:.75rem}
.ot-faq details{border:1px solid var(--ot-line);border-radius:14px;background:var(--ot-card)}
.ot-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;cursor:pointer;list-style:none;font-size:.9375rem;font-weight:600;color:#fff}
.ot-faq summary::-webkit-details-marker{display:none}
.ot-faq summary::after{content:'+';flex:none;font:400 1.25rem/1 var(--ot-mono);color:var(--ot-muted)}
.ot-faq details[open] summary::after{content:'\2212'}
.ot-faq details p{padding:0 1.25rem 1.25rem;margin:0}

@media(prefers-reduced-motion:reduce){.ot-pg *{transition:none!important}}