/* ============================================================
   GREIND.COM — Subpages (shared)
   ============================================================ */

/* ===== SUBPAGE HERO ===== */
.subhero{ padding-top: clamp(132px, 17vh, 210px); padding-bottom: clamp(48px,7vw,92px); background: var(--cream); position:relative; overflow:hidden; }
.subhero .wrap{ max-width: 1080px; }
.subhero .crumb{ display:flex; align-items:center; gap:9px; font-size:0.86rem; color: var(--ink-3); margin-bottom:26px; }
.subhero .crumb a{ color: var(--ink-2); }
.subhero .crumb a:hover{ color: var(--ink); }
.subhero .crumb span{ color: var(--ink-3); }
.subhero h1{ max-width: 18ch; }
.subhero .lead{ margin-top:26px; max-width: 60ch; }
.subhero .hero-actions{ margin-top:36px; display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.subhero-meta{ margin-top:46px; display:flex; gap: clamp(22px,3vw,52px); flex-wrap:wrap; }
.subhero-meta .stat{ display:flex; flex-direction:column; gap:3px; }
.subhero-meta .stat b{ font-size:1.65rem; font-weight:700; letter-spacing:-0.03em; font-feature-settings:"tnum"; }
.subhero-meta .stat span{ font-size:0.82rem; color: var(--ink-2); max-width: 18ch; }
.subhero-meta .stat .coral{ color: var(--coral); }

/* ===== POV BAND (navy quote) ===== */
.pov{ background: var(--navy); color: var(--on-navy); }
.pov .wrap{ max-width: 1000px; }
.pov .pov-q{ font-family: var(--serif); font-size: clamp(2rem, 4.6vw, 3.6rem); line-height:1.08; letter-spacing:-0.01em; text-wrap:balance; }
.pov .pov-q em{ font-style:italic; color: var(--coral-bright); }
.pov .pov-sub{ margin-top:30px; max-width: 60ch; color: var(--on-navy-2); font-size: clamp(1.05rem,1.5vw,1.28rem); line-height:1.55; }

/* ===== SECTION HEAD (reused) ===== */
.sec-head{ max-width: 760px; margin-bottom: clamp(34px,5vw,56px); }
.sec-head h2{ margin:18px 0 0; }
.sec-head .lead{ margin-top:18px; }

/* ===== PROSE / TWO-COL ===== */
.prose-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: clamp(34px,6vw,80px); align-items:start; }
@media (max-width: 900px){ .prose-grid{ grid-template-columns:1fr; gap:40px; } }
.prose-grid p + p{ margin-top:16px; }
.prose-grid p{ color: var(--ink-2); font-size:1.05rem; line-height:1.62; }

/* ===== CHECK / X LISTS ===== */
.check-list, .x-list{ display:grid; gap:13px; list-style:none; }
.check-list li, .x-list li{ display:flex; gap:13px; font-size:1.02rem; color: var(--ink-2); line-height:1.45; }
.check-list li::before{ content:""; width:18px; height:18px; flex:none; margin-top:3px; border-radius:50%; background:
  radial-gradient(circle at center, transparent 44%, var(--coral) 45%, var(--coral) 55%, transparent 56%); }
.check-list.solid li::before{ background: var(--coral); width:8px; height:8px; border-radius:50%; margin-top:9px; }
.x-list li::before{ content:"✕"; color: var(--ink-3); font-size:0.9rem; flex:none; margin-top:2px; font-weight:700; }

/* ===== FOUNDATIONS — DEEP ===== */
.found-deep{ display:grid; gap:1px; background: var(--line-soft); border-radius: var(--r-lg); overflow:hidden; box-shadow: inset 0 0 0 1px var(--line-soft); }
.found-deep article{ background: var(--white); padding: clamp(26px,3.4vw,42px); display:grid; grid-template-columns: 64px 1fr; gap: clamp(18px,2.4vw,32px); align-items:start; }
.found-deep .fd-num{ font-family: var(--serif); font-size:2.2rem; color: var(--coral); line-height:1; }
.found-deep h3{ font-size:1.32rem; margin-bottom:9px; }
.found-deep .fd-q{ color: var(--ink); font-weight:600; font-size:1.04rem; margin-bottom:12px; }
.found-deep p{ color: var(--ink-2); font-size:1.0rem; line-height:1.58; max-width: 64ch; }
@media (max-width: 560px){ .found-deep article{ grid-template-columns:1fr; gap:12px; } }

/* ===== DELIVERABLE ROWS (afurdir) ===== */
.deliv-rows{ display:grid; gap: clamp(16px,2.2vw,22px); }
.deliv-row{ display:grid; grid-template-columns: 0.92fr 1.08fr; gap: clamp(28px,4vw,56px); align-items:center;
  background: var(--white); border-radius: var(--r-lg); padding: clamp(26px,3.4vw,44px);
  box-shadow: inset 0 0 0 1px var(--line-soft), 0 24px 44px -38px oklch(0.255 0.045 261 / 0.5); }
.deliv-row:nth-child(even){ grid-template-columns: 1.08fr 0.92fr; }
.deliv-row:nth-child(even) .deliv-viz{ order:2; }
.deliv-tag{ font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; color: var(--coral); font-weight:600; }
.deliv-row h3{ font-size: clamp(1.3rem,2vw,1.75rem); margin:12px 0 14px; }
.deliv-row p{ color: var(--ink-2); font-size:1.02rem; line-height:1.6; }
.deliv-viz{ background: var(--cream); border-radius: var(--r); padding: clamp(22px,3vw,34px); box-shadow: inset 0 0 0 1px var(--line-soft); display:flex; flex-direction:column; justify-content:center; min-height: 200px; }
@media (max-width: 820px){
  .deliv-row, .deliv-row:nth-child(even){ grid-template-columns:1fr; gap:28px; }
  .deliv-row:nth-child(even) .deliv-viz{ order:0; }
}

/* table inside viz */
.viz-table{ width:100%; border-collapse:collapse; font-size:0.92rem; }
.viz-table td{ padding:9px 6px; border-bottom:1px solid var(--line-soft); }
.viz-table tr:last-child td{ border-bottom:none; }
.viz-table td:last-child{ text-align:right; font-feature-settings:"tnum"; font-weight:600; }
.pill{ display:inline-flex; padding:3px 11px; border-radius:100px; font-size:0.78rem; font-weight:600; }
.pill.g{ background: oklch(0.78 0.11 150 / 0.22); color: oklch(0.42 0.09 150); }
.pill.y{ background: oklch(0.86 0.13 92 / 0.28); color: oklch(0.48 0.1 80); }
.pill.r{ background: oklch(0.78 0.13 35 / 0.2); color: var(--coral-deep); }

/* ===== PRICING ===== */
.price-wrap{ display:grid; grid-template-columns: 1.2fr 0.8fr; gap: clamp(28px,4vw,48px); align-items:stretch; }
@media (max-width: 880px){ .price-wrap{ grid-template-columns:1fr; } }
.price-list h4{ font-size:1.05rem; margin:0 0 14px; }
.price-list + .price-list{ margin-top:30px; }
.price-card{ background: var(--navy); color: var(--on-navy); border-radius: var(--r-lg); padding: clamp(30px,4vw,44px); display:flex; flex-direction:column; }
.price-card .pc-label{ font-size:0.74rem; letter-spacing:0.14em; text-transform:uppercase; color: var(--on-navy-3); font-weight:600; }
.price-card .pc-amount{ font-size: clamp(2.4rem,4vw,3.2rem); font-weight:800; letter-spacing:-0.03em; margin:14px 0 4px; font-feature-settings:"tnum"; }
.price-card .pc-vsk{ color: var(--on-navy-2); font-size:0.95rem; }
.price-card .pc-note{ margin-top:18px; padding-top:18px; border-top:1px solid var(--line-navy); color: var(--on-navy-2); font-size:0.92rem; line-height:1.5; }
.price-card .btn{ margin-top:24px; }

/* ===== FAQ ===== */
.faq{ display:grid; gap:10px; max-width: 880px; }
.faq details{ background: var(--white); border-radius: var(--r); box-shadow: inset 0 0 0 1px var(--line-soft); padding: 2px 24px; transition: box-shadow .3s; }
.faq details[open]{ box-shadow: inset 0 0 0 1px var(--line); }
.faq summary{ cursor:pointer; padding:20px 0; font-weight:600; font-size:1.1rem; letter-spacing:-0.01em; list-style:none; display:flex; justify-content:space-between; gap:18px; align-items:center; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:"+"; color: var(--coral); font-size:1.5rem; font-weight:400; line-height:1; flex:none; transition: transform .3s; }
.faq details[open] summary::after{ content:"−"; }
.faq details p{ padding:0 0 22px; color: var(--ink-2); font-size:1.0rem; line-height:1.6; max-width: 70ch; }

/* ===== TEAM ===== */
.team{ display:grid; grid-template-columns: 0.8fr 1.2fr; gap: clamp(32px,5vw,64px); align-items:center; }
.team-photo{ border-radius: var(--r-lg); overflow:hidden; aspect-ratio: 4/4.6; box-shadow: 0 40px 80px -50px oklch(0.255 0.045 261 / 0.6), inset 0 0 0 1px var(--line-soft); background: var(--cream-deep); }
.team-photo img{ width:100%; height:100%; object-fit:cover; object-position: center top; }
.team h3{ font-size: clamp(1.5rem,2.4vw,2rem); margin-bottom:4px; }
.team .role{ color: var(--coral); font-weight:600; margin-bottom:20px; }
.team p{ color: var(--ink-2); font-size:1.04rem; line-height:1.62; }
.team p + p{ margin-top:14px; }
@media (max-width: 760px){ .team{ grid-template-columns:1fr; } .team-photo{ max-width: 360px; } }

/* ===== NETWORK CHIPS ===== */
.net-rail{ display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; }
.net-rail span{ padding:11px 20px; border-radius:100px; font-weight:600; font-size:1.0rem; background: var(--white); box-shadow: inset 0 0 0 1px var(--line-soft); color: var(--ink); }

/* ===== CONTACT ===== */
.contact-grid{ display:grid; grid-template-columns: 0.95fr 1.05fr; gap: clamp(36px,6vw,76px); align-items:start; }
@media (max-width: 860px){ .contact-grid{ grid-template-columns:1fr; gap:44px; } }
.contact-methods{ display:grid; gap:2px; margin-top:30px; border-radius: var(--r-lg); overflow:hidden; box-shadow: inset 0 0 0 1px var(--line-soft); }
.contact-methods a{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; background: var(--white); transition: background .25s; }
.contact-methods a:hover{ background: var(--cream); }
.contact-methods .cm-k{ font-size:0.76rem; letter-spacing:0.12em; text-transform:uppercase; color: var(--ink-3); font-weight:600; }
.contact-methods .cm-v{ font-weight:600; font-size:1.05rem; color: var(--ink); }
.contact-methods .arrow{ color: var(--coral); }

.contact-card{ background: var(--white); border-radius: var(--r-lg); padding: clamp(28px,3.6vw,40px); box-shadow: inset 0 0 0 1px var(--line-soft), 0 30px 56px -42px oklch(0.255 0.045 261 / 0.55); }
.field{ display:grid; gap:8px; margin-bottom:18px; }
.field label{ font-size:0.76rem; letter-spacing:0.08em; text-transform:uppercase; color: var(--ink-3); font-weight:600; }
.field input, .field textarea{ font:inherit; font-size:1rem; padding:13px 15px; border-radius: var(--r); background: var(--cream); box-shadow: inset 0 0 0 1px var(--line); color: var(--ink); transition: box-shadow .25s, background .25s; }
.field input:focus, .field textarea:focus{ outline:none; background: var(--white); box-shadow: inset 0 0 0 1.6px var(--coral); }
.field textarea{ resize:vertical; min-height:120px; }
.field-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width: 460px){ .field-row{ grid-template-columns:1fr; } }
.form-note{ font-size:0.86rem; color: var(--ink-3); margin-top:6px; }

/* ===== GENERIC CTA BAND (subpages) ===== */
.cta-band{ background: var(--navy-deep); color: var(--on-navy); }
.cta-band .wrap{ max-width: 860px; text-align:center; }
.cta-band h2{ color: var(--on-navy); margin-bottom:20px; }
.cta-band .lead{ color: var(--on-navy-2); margin-inline:auto; margin-bottom:34px; }
.cta-band .final-actions{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* active nav link */
.nav-links a[aria-current="page"]{ color: var(--ink); }
.nav-links a[aria-current="page"]::after{ content:""; display:block; height:2px; background: var(--coral); border-radius:2px; margin-top:3px; }
