/* GITS interior pages — service, about, careers, pricing and form pages,
   themed onto the gits.css plum system. Loaded after gits.css. */

/* ── Shell ─────────────────────────────────────────────────────── */
.container{width:100%;max-width:var(--ob-max);margin-inline:auto;padding-inline:var(--ob-gutter)}
.section{position:relative;padding-block:clamp(56px,9vh,110px)}
.section.light{background:rgba(247,242,246,.022);border-block:1px solid var(--ob-line)}
.section>.container{position:relative;z-index:1}
.eyebrow{font-family:var(--ob-display);font-size:clamp(12px,1.2vw,15px);font-weight:400;letter-spacing:.28em;text-transform:uppercase;color:var(--ob-mid)}
.lead{font-size:clamp(16px,1.35vw,20px);line-height:1.6;color:var(--ob-mid);max-width:64ch;text-wrap:pretty}
.sub-lead{font-size:clamp(15px,1.2vw,18px);line-height:1.65;color:var(--ob-mid);text-wrap:pretty}

/* ── Page hero ─────────────────────────────────────────────────── */
.page-hero{position:relative;padding-top:clamp(118px,17vh,186px);padding-bottom:clamp(44px,7vh,88px)}
.page-hero h1{font-family:var(--ob-display);font-size:clamp(34px,5.4vw,68px);font-weight:700;line-height:1.05;letter-spacing:.04em;margin:14px 0 0;text-wrap:balance}
.page-hero .lead{margin-top:20px}
.page-hero .split{display:grid;gap:clamp(28px,4vw,56px);align-items:center}
@media (min-width:920px){.page-hero .split{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}

/* ── Buttons ───────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 30px;border-radius:12px;font-family:var(--ob-display);font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:var(--ob-light);color:var(--ob-dark);cursor:pointer;transition:transform .3s var(--ob-ease),box-shadow .3s var(--ob-ease),background .3s var(--ob-ease),border-color .3s var(--ob-ease)}
.btn:hover{color:var(--ob-dark);transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.45)}
.btn:active{transform:translateY(0)}
.btn-ghost{background:none;border:1px solid var(--ob-line-2);color:var(--ob-ink)}
.btn-ghost:hover{background:rgba(247,242,246,.06);border-color:var(--ob-ink);color:var(--ob-ink);box-shadow:none}
.btn-small{min-height:44px;padding:0 20px;font-size:12px}

/* ── Section heads ─────────────────────────────────────────────── */
.section-head{display:grid;gap:14px;max-width:860px;margin-bottom:clamp(28px,4vh,52px)}
.section-head h2{font-family:var(--ob-display);font-size:var(--ob-h2);font-weight:600;line-height:1.12;text-wrap:balance}
.section-head p{color:var(--ob-mid);text-wrap:pretty}
h2,h3,h4{font-family:var(--ob-display);font-weight:600;line-height:1.2}

/* ── Image slots (photography to be supplied) ──────────────────── */
.service-graphic,.about-graphic,.ceo-photo-fallback,.board-photo-fallback{position:relative;display:grid;place-items:center;gap:8px;border:1px dashed var(--ob-line-2);border-radius:18px;background:var(--ob-card);color:var(--ob-dim);text-align:center;overflow:hidden}
.service-graphic{aspect-ratio:4/3}
.service-graphic>div{position:absolute;inset:14px;border-radius:14px;background:radial-gradient(60% 60% at 30% 25%,rgba(93,33,72,.55),transparent 70%),radial-gradient(55% 55% at 75% 80%,rgba(58,20,48,.5),transparent 72%)}
.service-graphic span,.about-graphic span{position:relative;z-index:1;font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ob-mid)}
.service-graphic::after,.about-graphic::after{content:"Image slot";position:relative;z-index:1;font-size:12px;color:var(--ob-dim)}
.about-graphic{aspect-ratio:16/10}
img{border-radius:12px}

/* ── Deliverables list (service pages) ─────────────────────────── */
.deliver-list{display:grid;gap:clamp(14px,1.8vw,22px);list-style:none;padding:0;margin:0}
.deliver-list li{padding:clamp(24px,2.6vw,38px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px;transition:background .35s var(--ob-ease),border-color .35s var(--ob-ease)}
.deliver-list li:hover{background:var(--ob-card-2);border-color:var(--ob-line-2)}
.deliver-list h3{font-size:clamp(19px,1.9vw,25px);margin-bottom:14px}
.deliver-list p{color:var(--ob-mid);font-size:15.5px;line-height:1.8;max-width:82ch;text-wrap:pretty}

/* ── CTA band ──────────────────────────────────────────────────── */
.cta{display:grid;justify-items:center;gap:16px;text-align:center;padding:clamp(36px,5vw,68px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:20px}
.cta h2{font-family:var(--ob-display);font-size:var(--ob-h2);font-weight:600;text-wrap:balance}
.cta p{color:var(--ob-mid);max-width:56ch}
.cta .btn{margin-top:10px}

/* ── Careers ───────────────────────────────────────────────────── */
.jobs{display:grid;gap:16px}
.jobs article{padding:clamp(20px,2.4vw,30px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px}
.job-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:18px}
.job-title-wrap{display:grid;gap:10px;flex:1 1 340px}
.job-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.job-title-row h3{font-size:20px}
.job-status{font-family:var(--ob-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ob-dim);border:1px solid var(--ob-line-2);border-radius:999px;padding:5px 11px}
.job-short{color:var(--ob-mid);font-size:15px;max-width:70ch}
.job-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.job-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--ob-line-2);border-radius:12px;font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ob-ink);cursor:pointer;transition:background .25s var(--ob-ease),border-color .25s var(--ob-ease)}
.job-toggle:hover{background:rgba(247,242,246,.06);border-color:var(--ob-ink)}
.job-toggle .arrow{font-size:10px;transition:transform .25s var(--ob-ease)}
.job-toggle[aria-expanded="true"] .arrow{transform:rotate(180deg)}
.job-details{display:none;gap:20px;margin-top:22px;padding-top:22px;border-top:1px solid var(--ob-line)}
.job-details.is-open{display:grid}
.job-meta{display:flex;flex-wrap:wrap;gap:8px}
.job-tag{font-family:var(--ob-display);font-size:12px;font-weight:500;letter-spacing:.06em;color:var(--ob-mid);border:1px solid var(--ob-line-2);border-radius:999px;padding:5px 12px}
.job-tag--green{color:#a9e6c0;border-color:rgba(169,230,192,.32)}
.job-tag--gray{color:var(--ob-dim)}
.jd-desc{color:var(--ob-mid);max-width:80ch;text-wrap:pretty}
.jd-cols{display:grid;gap:26px}
@media (min-width:820px){.jd-cols{grid-template-columns:1fr 1fr}}
.jd-cols h4{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ob-dim);margin-bottom:12px}
.jd-cols ul{display:grid;gap:9px;padding-left:18px;color:var(--ob-mid);font-size:15px;line-height:1.6}

/* ── About ─────────────────────────────────────────────────────── */
.about-intro{display:grid;gap:clamp(26px,4vw,56px);align-items:center}
@media (min-width:920px){.about-intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}
.about-intro-text p{color:var(--ob-mid);margin-bottom:14px;text-wrap:pretty}
.service-list{display:grid;gap:10px;padding-left:18px;color:var(--ob-mid);margin-top:8px}
.service-list li::marker{color:var(--ob-dim)}
.feature-grid{display:grid;gap:clamp(16px,1.8vw,24px);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.feature{display:grid;gap:10px;padding:clamp(22px,2.4vw,30px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px}
.feature h3,.feature h4{font-size:18px}
.feature p{color:var(--ob-mid);font-size:15px}
.reveal{opacity:1}

.ceo-wrap{display:grid;gap:clamp(24px,3.4vw,44px);align-items:start}
@media (min-width:920px){.ceo-wrap{grid-template-columns:minmax(0,.42fr) minmax(0,1fr)}}
.ceo-photo-col{display:grid;gap:14px}
.ceo-photo,.ceo-photo-fallback{aspect-ratio:4/5;width:100%;object-fit:cover;border-radius:18px}
.ceo-photo-fallback::after{content:"Portrait slot · 4:5";font-size:12px;color:var(--ob-dim)}
.ceo-badge{font-family:var(--ob-display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ob-mid);border:1px solid var(--ob-line-2);border-radius:999px;padding:6px 12px;justify-self:start}
.ceo-name{font-family:var(--ob-display);font-size:clamp(24px,2.6vw,34px);font-weight:600;margin-bottom:6px}
.ceo-title{color:var(--ob-mid);margin-bottom:16px}
.ceo-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.ceo-tag{font-family:var(--ob-display);font-size:12px;letter-spacing:.06em;color:var(--ob-mid);border:1px solid var(--ob-line-2);border-radius:999px;padding:5px 12px}
.ceo-bio p{color:var(--ob-mid);margin-bottom:14px;text-wrap:pretty}
.ceo-contact{color:var(--ob-mid);font-size:15px}
.edu-compact{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.edu-pill{display:grid;gap:2px;padding:12px 16px;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:12px;font-size:14px;color:var(--ob-mid)}
.edu-pill-deg{font-family:var(--ob-display);font-weight:600;color:var(--ob-ink)}
.founder-note{padding:clamp(20px,2.4vw,30px);background:var(--ob-card);border:1px solid var(--ob-line);border-left:2px solid var(--ob-glow-a);border-radius:16px;color:var(--ob-mid);margin-top:22px;text-wrap:pretty}
.founder-sign{display:block;margin-top:14px;font-family:var(--ob-display);color:var(--ob-ink)}

.award-grid,.board-grid,.media-grid{display:grid;gap:clamp(16px,1.8vw,24px);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.award-card,.board-card,.media-card{display:grid;gap:12px;padding:clamp(22px,2.4vw,30px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px;transition:transform .35s var(--ob-ease),background .35s var(--ob-ease)}
.award-card:hover,.board-card:hover,.media-card:hover{transform:translateY(-4px);background:var(--ob-card-2)}
.award-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(247,242,246,.07);border:1px solid var(--ob-line-2);font-size:18px}
.award-icon--gold{color:#e8c98a}.award-icon--blue{color:#9ec6e8}.award-icon--purple{color:#c9a3e0}
.award-card h3,.award-card h4{font-size:17px}
.award-card p,.media-card p{color:var(--ob-mid);font-size:15px}
.patent-box{display:grid;gap:12px;padding:clamp(22px,2.6vw,34px);background:var(--ob-card);border:1px solid var(--ob-line-2);border-radius:18px}
.patent-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:var(--ob-dim);font-size:14px}
.patent-tag,.patent-badge{font-family:var(--ob-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--ob-line-2);border-radius:999px;padding:5px 11px;color:var(--ob-mid)}
.patent-badge{background:rgba(93,33,72,.4);border-color:rgba(197,106,164,.4);color:#f0cfe4}
.board-photo,.board-photo-fallback{aspect-ratio:1/1;width:76px;height:76px;object-fit:cover;border-radius:50%}
.board-photo-fallback{border-radius:50%;font-size:11px}
.board-photo-wrap{display:flex}
.board-name{font-family:var(--ob-display);font-size:18px;font-weight:600}
.board-title{color:var(--ob-dim);font-size:14px;margin-bottom:8px}
.board-bio{color:var(--ob-mid);font-size:15px}
.media-src{font-family:var(--ob-display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ob-dim)}
.pub-link{color:var(--ob-ink);text-decoration:underline;text-underline-offset:3px}
.pub-link:hover{color:#fff}

/* ── Website management: packages, inclusions, process ─────────── */
.pricing-grid{display:grid;gap:clamp(18px,2vw,28px);grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));margin-top:8px}
.pricing-card{position:relative;display:flex;flex-direction:column;padding:clamp(24px,2.6vw,34px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px;transition:transform .35s var(--ob-ease),background .35s var(--ob-ease),border-color .35s var(--ob-ease)}
.pricing-card:hover{transform:translateY(-6px);background:var(--ob-card-2);border-color:var(--ob-line-2)}
.pricing-card h3{font-size:20px;margin-bottom:4px}
.pricing-tagline{color:var(--ob-dim);font-size:14px;margin-bottom:20px}
.pricing-card h3.pricing-price{font-family:var(--ob-display);font-size:22px;font-weight:700;color:#f0cfe4;margin-bottom:18px}
.pricing-price-note{display:block;font-size:13px;font-weight:400;color:var(--ob-dim);letter-spacing:0}
.pkg-highlight{background:rgba(197,106,164,.22);border-radius:6px;padding:1px 6px;color:#f7dcec}
.pricing-card--popular{border-color:rgba(197,106,164,.5)}
.popular-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--ob-light);color:var(--ob-dark);font-family:var(--ob-display);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 14px;border-radius:999px;white-space:nowrap}
.pricing-card h4{font-family:var(--ob-display);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ob-dim);margin-bottom:10px}
.pricing-card ul{display:grid;gap:7px;padding-left:18px;margin-bottom:22px;color:var(--ob-mid);font-size:14.5px;line-height:1.6}
.pricing-best-for{margin-top:auto;color:var(--ob-mid);font-size:14px}
.pricing-tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.pricing-tag{font-size:12px;color:var(--ob-mid);border:1px solid var(--ob-line-2);border-radius:999px;padding:4px 11px}
.pricing-maintenance{color:var(--ob-mid);font-size:14px;padding-top:14px;border-top:1px solid var(--ob-line)}
.care-perk{display:block;margin-top:8px;color:#e3b7d3;font-weight:500;font-size:13.5px}
.pricing-cta{margin-top:20px}
.pricing-cta .btn{width:100%}
.addon-block{padding:clamp(24px,2.6vw,34px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px;margin-top:32px}
.addon-block h3{font-size:20px;margin-bottom:6px}
.addon-note{color:var(--ob-mid);font-size:14.5px;margin-bottom:22px;max-width:76ch}
.addon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:2px 32px}
.addon-item{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--ob-line);font-size:14.5px;color:var(--ob-mid)}
.addon-item strong{color:var(--ob-ink);font-weight:500}

.ib-grid{display:grid;gap:clamp(16px,1.8vw,26px);grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));margin-top:8px}
.ib-card{display:flex;flex-direction:column;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px;overflow:hidden;transition:transform .35s var(--ob-ease),background .35s var(--ob-ease)}
.ib-card:hover{transform:translateY(-6px);background:var(--ob-card-2)}
.ib-card-header{position:relative;display:grid;place-items:center;height:132px;background:linear-gradient(135deg,#3a1430,#5d2148);border-bottom:1px solid var(--ob-line)}
.ib-card-header--2{background:linear-gradient(135deg,#2b1030,#4a2158)}
.ib-card-header--3{background:linear-gradient(135deg,#331635,#63285a)}
.ib-card-header--4{background:linear-gradient(135deg,#40142f,#6d2a4e)}
.ib-card-header--5{background:linear-gradient(135deg,#291032,#512050)}
.ib-card-header--6{background:linear-gradient(135deg,#361a3a,#5a2450)}
.ib-card-header--7{background:linear-gradient(135deg,#45182f,#742c55)}
.ib-card-header--8{background:linear-gradient(135deg,#2d1330,#56245a)}
.ib-card-header--9{background:linear-gradient(135deg,#3b1636,#65275c)}
.ib-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.ib-icon-wrap{position:relative;z-index:2;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:rgba(247,242,246,.12);border:1px solid rgba(247,242,246,.24);color:var(--ob-ink)}
.ib-card-body{display:flex;flex-direction:column;padding:24px}
.ib-card-body h3{font-size:18px;margin-bottom:10px}
.ib-card-body p{color:var(--ob-mid);font-size:14.5px;line-height:1.7;margin-bottom:14px}
.ib-card-body ul{display:grid;gap:6px;padding-left:18px;margin-bottom:14px;color:var(--ob-mid);font-size:14.5px}
.ib-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.ib-tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ob-mid);border:1px solid var(--ob-line-2);border-radius:999px;padding:4px 11px}
.process-grid{display:grid;gap:clamp(14px,1.6vw,20px);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));margin-top:8px}
.process-step{position:relative;padding:30px 18px 24px;text-align:center;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px}
.process-step::before{content:attr(data-step);position:absolute;top:-13px;left:50%;transform:translateX(-50%);display:grid;place-items:center;min-width:28px;height:28px;padding-inline:8px;border-radius:999px;background:var(--ob-light);color:var(--ob-dark);font-family:var(--ob-display);font-size:12px;font-weight:700}
.process-step h4{font-size:15px;margin-bottom:8px}
.process-step p{color:var(--ob-mid);font-size:13.5px}

/* ── Forms (enterprise quote) ──────────────────────────────────── */
.form-wrap{display:grid;gap:clamp(20px,2.4vw,32px)}
@media (min-width:960px){.form-wrap{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:start}}
.form{display:grid;gap:18px;padding:clamp(24px,2.8vw,38px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px}
.form label{display:grid;gap:8px;font-family:var(--ob-display);font-size:13px;font-weight:500;letter-spacing:.06em;color:var(--ob-mid)}
.form input,.form select,.form textarea{width:100%;padding:14px 16px;background:rgba(0,0,0,.22);border:1px solid var(--ob-line-2);border-radius:12px;color:var(--ob-ink);font-family:var(--ob-body);font-size:15px}
.form input::placeholder,.form textarea::placeholder{color:var(--ob-dim)}
.form textarea{min-height:130px;resize:vertical}
.form select option{background:#1a0e19;color:var(--ob-ink)}
.form fieldset{border:1px solid var(--ob-line);border-radius:14px;padding:18px}
.form legend{padding-inline:8px;font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ob-dim)}
.eq-section-title{font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ob-dim);padding-top:8px}
.eq-addons{display:grid;gap:12px}
.eq-addons-hint{color:var(--ob-dim);font-size:14px}
.eq-addon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px}
.eq-addon-item{display:flex;align-items:center;gap:10px;padding:12px 14px;background:rgba(247,242,246,.03);border:1px solid var(--ob-line);border-radius:12px;font-size:14.5px;color:var(--ob-mid);cursor:pointer}
.eq-addon-item:hover{background:rgba(247,242,246,.07)}
.eq-addon-item input{width:auto;padding:0;accent-color:#c56aa4}
.form-status{font-size:14px;color:var(--ob-mid)}
.contact-panel{display:grid;gap:12px;padding:clamp(22px,2.4vw,30px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px;color:var(--ob-mid);font-size:15px}
.contact-panel b{color:var(--ob-ink)}
.contact-panel img{max-width:180px}

/* ── Services index ────────────────────────────────────────────── */
.svc-grid{display:grid;gap:clamp(16px,1.8vw,24px);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.svc-card{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,2.6vw,34px);background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px;transition:transform .4s var(--ob-ease),background .4s var(--ob-ease),border-color .4s var(--ob-ease)}
.svc-card:hover{transform:translateY(-6px);background:var(--ob-card-2);border-color:var(--ob-line-2);color:var(--ob-ink)}
.svc-card__n{font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--ob-dim)}
.svc-card h3{font-size:clamp(19px,1.7vw,23px)}
.svc-card p{color:var(--ob-mid);font-size:15px;text-wrap:pretty}
.svc-card__go{margin-top:auto;padding-top:8px;font-family:var(--ob-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ob-ink)}
.svc-card:hover .svc-card__go span{display:inline-block;transform:translateX(4px);transition:transform .3s var(--ob-ease)}

/* ── Motion mark (hero-style logo, no frame) ───────────────────── */
.ob-mark{position:relative;display:grid;place-items:center;width:100%;max-width:440px;aspect-ratio:1;margin-inline:auto;perspective:1000px;pointer-events:none}
.ob-mark__glow{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(214,132,180,.32),transparent 68%);filter:blur(46px);animation:ob-mark-pulse 7s ease-in-out infinite}
.ob-mark__in{position:absolute;inset:0;display:grid;place-items:center;transform-style:preserve-3d;will-change:transform}
.ob-mark__m{width:100%;height:100%;object-fit:contain;border-radius:0;opacity:.94;filter:drop-shadow(0 18px 50px rgba(0,0,0,.45));animation:ob-mark-float 9s ease-in-out infinite}
@keyframes ob-mark-float{0%,100%{transform:translateY(-10px) scale(1)}50%{transform:translateY(10px) scale(1.02)}}
@keyframes ob-mark-pulse{0%,100%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.06)}}
@media (prefers-reduced-motion:reduce){.ob-mark__m,.ob-mark__glow{animation:none}}

/* ── Legal pages ───────────────────────────────────────────────── */
.legal-wrap{max-width:82ch;color:var(--ob-mid)}
.legal-wrap h2{font-size:clamp(20px,2vw,26px);color:var(--ob-ink);margin:36px 0 12px}
.legal-wrap h3{font-size:17px;color:var(--ob-ink);margin:24px 0 10px}
.legal-wrap p{margin-bottom:14px;line-height:1.75;text-wrap:pretty}
.legal-wrap ul,.legal-wrap ol{display:grid;gap:8px;padding-left:20px;margin-bottom:16px;line-height:1.7}
.legal-wrap a{color:var(--ob-ink);text-decoration:underline;text-underline-offset:3px}
.legal-wrap a:hover{color:#fff}
.legal-wrap strong,.legal-wrap b{color:var(--ob-ink);font-weight:500}
.legal-wrap table{width:100%;border-collapse:collapse;margin-bottom:18px;font-size:15px}
.legal-wrap th,.legal-wrap td{border:1px solid var(--ob-line);padding:10px 12px;text-align:left;vertical-align:top}
.legal-wrap th{color:var(--ob-ink);font-family:var(--ob-display);font-weight:600}
.legal-updated{font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ob-dim);padding-bottom:18px;border-bottom:1px solid var(--ob-line);margin-bottom:8px}
.legal-caps{font-size:14.5px;color:var(--ob-mid)}

/* ── Card surfaces (checkout, status) ──────────────────────────── */
.card{background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px;padding:clamp(24px,2.6vw,34px)}
.checkout-card{max-width:660px;margin-inline:auto}
.co-back{display:inline-block;margin-bottom:18px;color:var(--ob-dim);font-size:14px}
.co-back:hover{color:var(--ob-ink)}
.checkout-pkg-name{font-family:var(--ob-display);font-size:22px;font-weight:600;color:var(--ob-ink);margin-bottom:4px}
.checkout-pkg-tagline{color:var(--ob-mid);font-size:15px;margin-bottom:26px}
.co-options{display:grid;gap:14px;margin-bottom:22px}
.co-option{width:100%;padding:18px 20px;text-align:left;font:inherit;color:var(--ob-mid);background:rgba(247,242,246,.03);border:1px solid var(--ob-line);border-radius:16px;cursor:pointer;transition:border-color .2s var(--ob-ease),background .2s var(--ob-ease)}
.co-option:hover{background:rgba(247,242,246,.07);border-color:var(--ob-line-2)}
.co-option.selected{border-color:rgba(197,106,164,.6);background:rgba(93,33,72,.28)}
.co-option b{display:block;font-family:var(--ob-display);font-size:17px;color:var(--ob-ink);margin-bottom:4px}
.co-option .co-price{font-family:var(--ob-display);font-size:21px;font-weight:700;color:#f0cfe4;margin:6px 0}
.co-option small{display:block;line-height:1.55;color:var(--ob-dim)}
.co-note{display:flex;gap:10px;padding:14px 16px;margin-bottom:22px;font-size:14px;color:var(--ob-mid);background:rgba(247,242,246,.04);border:1px solid var(--ob-line);border-radius:14px}
.co-cancelled{display:none;padding:14px 16px;margin-bottom:22px;font-size:14.5px;color:#e8c98a;background:rgba(232,201,138,.08);border:1px solid rgba(232,201,138,.3);border-radius:14px}
.co-cancelled.show{display:block}
.co-error,.ps-error{display:none;padding:14px 16px;margin-top:16px;font-size:14.5px;color:#f0a6a6;background:rgba(240,166,166,.08);border:1px solid rgba(240,166,166,.28);border-radius:14px}
.co-error.show,.ps-error.show{display:block}
.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}
.ps-card{max-width:580px;margin-inline:auto;text-align:center;padding:clamp(32px,4vw,48px)}
.ps-check{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%;background:linear-gradient(135deg,#5d2148,#c56aa4);color:#fff;font-size:30px}
.ps-spinner{width:40px;height:40px;margin:0 auto 20px;border-radius:50%;border:3px solid var(--ob-line-2);border-top-color:#c56aa4;animation:ps-spin 1s linear infinite}
@keyframes ps-spin{to{transform:rotate(360deg)}}
.ps-title{font-family:var(--ob-display);font-size:24px;font-weight:600;color:var(--ob-ink);margin-bottom:10px}
.ps-text{color:var(--ob-mid);line-height:1.6;margin-bottom:24px}
.ps-error{text-align:left}

.contact-panel img{max-width:170px;margin-bottom:16px;opacity:.92}
.contact-panel p{margin-bottom:10px}
.contact-panel a[aria-label]{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--ob-line-2);border-radius:12px;color:var(--ob-mid);transition:color .2s var(--ob-ease),border-color .2s var(--ob-ease),background .2s var(--ob-ease)}
.contact-panel a[aria-label]:hover{color:var(--ob-ink);border-color:var(--ob-ink);background:rgba(247,242,246,.06)}
.contact-panel a[aria-label] svg{width:20px;height:20px}

/* ── Services ring (3D carousel) ───────────────────────────────── */
.svc-ring__stage{display:contents}
.svc-ring__hint{display:none}
.svc-ring.is-3d{display:block;position:relative;height:500px;margin-block:clamp(20px,4vw,48px);perspective:1600px;perspective-origin:50% 46%;touch-action:pan-y}
.svc-ring.is-3d .svc-ring__stage{display:block;position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}
.svc-ring.is-3d .svc-card{position:absolute;top:50%;left:50%;width:300px;height:330px;margin:-165px 0 0 -150px;padding:28px;backface-visibility:hidden;transition:background .3s var(--ob-ease),border-color .3s var(--ob-ease),box-shadow .3s var(--ob-ease)}
.svc-ring.is-3d .svc-card p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.svc-ring.is-3d .svc-card:hover{background:var(--ob-card-2);border-color:rgba(197,106,164,.55);box-shadow:0 26px 60px rgba(0,0,0,.5)}
.svc-ring.is-3d+.svc-ring__hint,.svc-ring.is-3d .svc-ring__hint{display:block}
.svc-ring__hint{margin-top:8px;text-align:center;font-family:var(--ob-display);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ob-dim)}

.svc-head{display:grid;gap:20px;max-width:none}
@media (min-width:900px){.svc-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}.svc-head>div:first-child{max-width:860px}}
.svc-view{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--ob-line-2);border-radius:14px;background:rgba(247,242,246,.03);justify-self:start}
@media (min-width:900px){.svc-view{justify-self:end}}
.svc-view button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:11px;background:none;font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ob-dim);cursor:pointer;transition:background .2s var(--ob-ease),color .2s var(--ob-ease)}
.svc-view button svg{width:17px;height:17px}
.svc-view button:hover{color:var(--ob-ink)}
.svc-view button[aria-pressed="true"]{background:var(--ob-light);color:var(--ob-dark)}

/* ── Homepage: production content blocks ───────────────────────── */
.ob-hero__cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.ob-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.ob-clients{display:grid;gap:clamp(14px,1.8vw,22px);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.ob-client{display:flex;align-items:center;gap:16px;padding:20px 22px;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:16px;transition:transform .35s var(--ob-ease),background .35s var(--ob-ease),border-color .35s var(--ob-ease)}
a.ob-client:hover{transform:translateY(-4px);background:var(--ob-card-2);border-color:var(--ob-line-2);color:var(--ob-ink)}
.ob-client__m{display:grid;place-items:center;flex:0 0 auto;width:52px;height:52px;border-radius:14px;background:rgba(197,106,164,.16);border:1px solid var(--ob-line-2);font-family:var(--ob-display);font-size:16px;font-weight:700;letter-spacing:.06em;color:#f0cfe4}
.ob-client__i{display:grid;gap:3px;min-width:0}
.ob-client__i b{font-family:var(--ob-display);font-size:17px;font-weight:600}
.ob-client__i span{font-size:14px;color:var(--ob-dim)}
.ob-client__i em{font-style:normal;font-size:13px;color:var(--ob-mid)}
.ob-metrics{display:grid;gap:clamp(14px,1.8vw,22px);grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));margin-top:clamp(24px,3.4vw,44px);padding-top:clamp(24px,3.4vw,40px);border-top:1px solid var(--ob-line)}
.ob-metric{display:grid;gap:8px}
.ob-metric__v{font-family:var(--ob-display);font-size:clamp(34px,4.4vw,56px);font-weight:700;line-height:1;color:#f0cfe4}
.ob-metric span{font-size:14.5px;color:var(--ob-mid)}
.ob-model{display:grid;gap:clamp(26px,4vw,54px);margin-top:clamp(40px,6vw,84px);padding-top:clamp(32px,4vw,56px);border-top:1px solid var(--ob-line)}
@media (min-width:900px){.ob-model{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}}
.ob-model .ob-body{color:var(--ob-mid);margin-top:12px;max-width:46ch}
.ob-steps{display:grid;gap:14px}
.ob-step{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;padding:18px 20px;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:14px}
.ob-step__n{grid-row:span 2;align-self:center;font-family:var(--ob-display);font-size:13px;font-weight:600;letter-spacing:.16em;color:var(--ob-dim)}
.ob-step b{font-family:var(--ob-display);font-size:17px;font-weight:600}
.ob-step span:last-child{font-size:14.5px;color:var(--ob-mid)}
.ob-inds{margin-top:clamp(36px,5vw,68px);padding-top:clamp(26px,3.4vw,44px);border-top:1px solid var(--ob-line)}
.ob-inds__l{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;list-style:none;padding:0}
.ob-inds__l li{padding:11px 18px;border:1px solid var(--ob-line-2);border-radius:999px;font-size:14.5px;color:var(--ob-mid)}
.ob-card .ob-more{margin-top:auto;padding-top:10px}

/* Skills orb on the about page */
.ceo-bio .ob-skills{margin-top:28px;padding-top:22px;border-top:1px solid var(--ob-line)}
.ceo-bio .ob-skills__t{font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ob-dim);margin-bottom:6px}
.ceo-bio .ob-orb{min-height:340px}

/* Mission split */
.ob-mission{display:grid;gap:clamp(26px,4vw,60px);align-items:center}
@media (min-width:900px){.ob-mission{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.ob-mission__c{display:grid;gap:16px;justify-items:start}
.ob-mission__c .ob-body{color:var(--ob-mid);max-width:64ch}
.ob-mission__s{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;width:100%;margin:10px 0 6px;padding:22px 0;border-block:1px solid var(--ob-line)}
.ob-mission__s div{display:grid;gap:5px}
.ob-mission__s b{font-family:var(--ob-display);font-size:clamp(24px,3vw,38px);font-weight:700;line-height:1;color:#f0cfe4}
.ob-mission__s small{font-size:13.5px;color:var(--ob-dim)}
@media (max-width:600px){.ob-mission__s{grid-template-columns:1fr;gap:14px}}

/* ── Team: half-ring carousel ──────────────────────────────────── */
.ob-arc{position:relative;margin-top:clamp(20px,3vw,36px);padding-inline:clamp(0px,4vw,64px);perspective:1400px;overflow:hidden}
.ob-arc__stage{position:relative;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-block:8px;scrollbar-width:none}
.ob-arc__stage::-webkit-scrollbar{display:none}
.ob-tm{flex:0 0 300px;scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 26px;text-align:center;background:var(--ob-card);border:1px solid var(--ob-line);border-radius:18px}
.ob-tm__ph{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;overflow:hidden;background:linear-gradient(140deg,#5d2148,#8a3d6f);border:1px solid var(--ob-line-2);font-family:var(--ob-display);font-size:26px;font-weight:700;letter-spacing:.04em;color:#f7dcec}
.ob-tm__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.ob-tm h3{font-family:var(--ob-display);font-size:19px;font-weight:600}
.ob-tm__r{font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#e3b7d3}
.ob-tm__b{font-size:14.5px;line-height:1.7;color:var(--ob-mid);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ob-tm.is-open .ob-tm__b{-webkit-line-clamp:unset;display:block}
.ob-tm__t{background:none;font-family:var(--ob-display);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ob-ink);cursor:pointer;padding:6px 0}
.ob-tm__t span{display:inline-block;transition:transform .2s var(--ob-ease)}
.ob-tm.is-open .ob-tm__t span{transform:rotate(180deg)}
.ob-tm .ob-more{margin-top:auto;padding-top:8px;font-size:12px}
.ob-arc__n{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:46px;height:46px;margin-top:-23px;border-radius:50%;background:rgba(21,12,21,.9);border:1px solid var(--ob-line-2);color:var(--ob-ink);font-size:17px;cursor:pointer;transition:background .2s var(--ob-ease),transform .2s var(--ob-ease)}
.ob-arc__n:hover{background:var(--ob-light);color:var(--ob-dark);transform:scale(1.06)}
.ob-arc__n--p{left:0}.ob-arc__n--x{right:0}
.ob-arc__d{display:flex;justify-content:center;gap:7px;margin-top:20px}
.ob-arc__d button{width:8px;height:8px;padding:0;border-radius:999px;background:var(--ob-line-2);cursor:pointer;transition:width .25s var(--ob-ease),background .25s var(--ob-ease)}
.ob-arc__d button[aria-selected="true"]{width:26px;background:#e3b7d3}
@media (min-width:900px){
.ob-arc__stage{overflow:visible;justify-content:center;transform-style:preserve-3d;height:412px;gap:0;padding:0}
.ob-tm{position:absolute;top:0;left:50%;width:330px;max-height:100%;margin-left:-165px;justify-content:flex-start;overflow:hidden;transition:transform .55s var(--ob-ease),opacity .55s var(--ob-ease);will-change:transform}
.ob-tm.is-front{background:var(--ob-card-2);border-color:rgba(197,106,164,.4);box-shadow:0 28px 64px rgba(0,0,0,.5)}
.ob-tm:not(.is-front) .ob-tm__t,.ob-tm:not(.is-front) .ob-more,.ob-tm:not(.is-front) .ob-tm__b{visibility:hidden}
.ob-tm:not(.is-front){cursor:pointer}
.ob-tm__b{-webkit-line-clamp:4}
.ob-tm.is-open{overflow-y:auto}
}
@media (max-width:899px){.ob-arc__n{display:none}}
html[dir="rtl"] .ob-arc__n--p{left:auto;right:0}
html[dir="rtl"] .ob-arc__n--x{right:auto;left:0}

.form-status.is-ok,.ob-status.is-ok{color:#a9e6c0}
.form-status.is-err,.ob-status.is-err{color:#f0a8a8}
.form-status code,.ob-status code{font-family:ui-monospace,monospace;font-size:.92em;color:var(--ob-ink)}
