/* Services pages (services.html and the service pages), Request a Quote and the capability statement. */

/* Hero */
.svc-hero{padding:88px 0 72px}
.svc-hero h1{max-width:880px}
.svc-hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.svc-hero .facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:30px;font-family:var(--mono);font-size:.76rem;color:var(--slate-soft);letter-spacing:.02em}
.svc-hero .facts b{color:var(--navy);font-weight:500}
.svc-hero .back{font-family:var(--sans);font-size:.82rem;font-weight:600;color:var(--slate-soft);text-decoration:none;display:inline-block;margin-bottom:18px}
.svc-hero .back:hover{color:var(--teal-deep)}

/* Service cards */
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-card{background:var(--card-bg);padding:30px 28px 26px;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:background-color .2s ease;position:relative}
a.svc-card:hover{background:var(--card-hover)}
a.svc-card:hover h3{color:var(--teal-deep)}
.svc-card .num{font-family:var(--mono);font-size:.78rem;color:var(--teal-deep)}
.svc-card h3{font-size:1.3rem;margin:12px 0 10px;line-height:1.25}
.svc-card p{font-family:var(--sans);font-size:.92rem;line-height:1.65;color:var(--slate);margin-bottom:14px}
.svc-card ul{list-style:none;margin:0 0 18px;padding:0;font-family:var(--sans);font-size:.86rem;color:var(--slate)}
.svc-card li{padding:5px 0 5px 16px;position:relative}
.svc-card li::before{content:"";position:absolute;left:0;top:13px;width:6px;height:6px;border-radius:50%;background:var(--teal)}
.svc-card .more{margin-top:auto}

/* Who we work with */
.svc-clients{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:var(--tint-2)}
.svc-clients div{background:var(--white);padding:24px 24px 22px}
section:nth-of-type(even) .svc-clients div{background:var(--tint)}
.svc-clients b{display:block;font-family:var(--serif);font-weight:500;font-size:1.08rem;color:var(--navy);margin-bottom:6px}
.svc-clients span{font-family:var(--sans);font-size:.88rem;line-height:1.6;color:var(--slate)}

/* Process steps */
.svc-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;counter-reset:step}
.svc-steps li{counter-increment:step;background:var(--card-bg);padding:26px 22px;font-family:var(--sans);font-size:.9rem;line-height:1.6;color:var(--slate)}
.svc-steps li::before{content:counter(step,decimal-leading-zero);display:block;font-family:var(--mono);font-size:.78rem;color:var(--teal-deep);margin-bottom:12px}
.svc-steps li b{display:block;font-family:var(--serif);font-size:1.1rem;font-weight:500;color:var(--navy);margin-bottom:6px}

/* Proof strip */
.proof{background:var(--navy);color:#fff;padding:64px 0}
section.proof{background:var(--navy)}
.proof .label{color:var(--teal-dim)}
.proof-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:22px 0 30px}
.proof-stats b{display:block;font-family:var(--mono);font-weight:500;font-size:2.3rem;letter-spacing:-.03em;color:#fff}
.proof-stats span{font-family:var(--sans);font-size:.86rem;color:#C9D2DB;line-height:1.5}
.proof p.speakers{font-family:var(--serif);font-size:1.05rem;color:#C9D2DB;max-width:860px;line-height:1.65;margin:0}
.proof p.speakers b{color:#fff;font-weight:500}

/* Why PIVRA */
.why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.why-grid .card h3{font-size:1.15rem;margin-bottom:8px}
.why-grid .card p{font-family:var(--sans);font-size:.92rem;line-height:1.65}

/* Deliverables and examples on service pages */
.svc-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.svc-list{list-style:none;margin:0;padding:0}
.svc-list li{font-family:var(--sans);font-size:.96rem;line-height:1.6;color:var(--slate);padding:13px 0;border-bottom:1px solid var(--tint-2);display:grid;grid-template-columns:18px 1fr;gap:10px}
.svc-list li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);margin-top:8px}
.svc-list li b{color:var(--navy);font-weight:600}
.svc-h3{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep);font-weight:500;margin:0 0 10px}
.svc-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-related a{background:var(--card-bg);padding:24px;text-decoration:none;display:flex;flex-direction:column;transition:background-color .2s ease}
.svc-related a:hover{background:var(--card-hover)}
.svc-related a:hover strong{color:var(--teal-deep)}
.svc-related .t{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep)}
.svc-related strong{font-family:var(--serif);font-weight:500;font-size:1.05rem;color:var(--navy);margin:10px 0 0;line-height:1.35}

/* FAQ */
.faq{max-width:840px}
.faq details{border-bottom:1px solid var(--tint-2);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:1.1rem;color:var(--navy);padding:18px 36px 18px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:15px;font-family:var(--sans);font-size:1.3rem;color:var(--teal-deep)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{font-family:var(--sans);font-size:.95rem;line-height:1.7;color:var(--slate);margin:0 0 20px;max-width:760px}

/* Closing call to action */
.quote-band{background:var(--navy);padding:52px 56px;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.quote-band h2{color:#fff;margin:0 0 8px;font-size:clamp(1.6rem,2.6vw,2.1rem)}
.quote-band p{font-family:var(--sans);color:#C9D3DE;margin:0;max-width:600px;line-height:1.6}
.quote-band .actions{display:flex;gap:12px;flex-wrap:wrap}
.quote-band .btn.primary{background:#fff;color:var(--navy)}
.quote-band .btn.primary:hover{background:var(--tint-2)}
.quote-band .btn.secondary{background:rgba(255,255,255,.1);color:#fff}
.quote-band .btn.secondary:hover{background:rgba(255,255,255,.18)}

/* Request a Quote: side panel */
.quote-layout{grid-template-columns:minmax(0,1fr) 320px}
.quote-aside{position:sticky;top:100px;display:grid;gap:16px}
.qa-card{background:var(--white);padding:24px 24px 22px}
.qa-card .label{display:block;margin-bottom:12px}
.qa-card p{font-family:var(--sans);font-size:.9rem;line-height:1.6;color:var(--slate);margin:0}
.qa-steps{list-style:none;margin:0;padding:0;counter-reset:qa}
.qa-steps li{counter-increment:qa;position:relative;padding:0 0 14px 34px;font-family:var(--sans);font-size:.86rem;line-height:1.55;color:var(--slate)}
.qa-steps li::before{content:counter(qa);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--tint-2);color:var(--navy);font-family:var(--mono);font-size:.74rem;display:flex;align-items:center;justify-content:center}
.qa-steps li b{display:block;color:var(--navy);font-weight:600}
.qa-proof{list-style:none;margin:0 0 14px;padding:0;font-family:var(--sans);font-size:.88rem;color:var(--slate)}
.qa-proof li{padding:6px 0;border-bottom:1px solid var(--tint)}
.qa-proof b{font-family:var(--mono);font-weight:500;color:var(--navy);margin-right:6px}

@media (max-width:1000px){
  .svc-grid,.svc-related{grid-template-columns:repeat(2,minmax(0,1fr))}
  .svc-steps,.proof-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quote-layout{grid-template-columns:1fr}
  .quote-aside{position:static}
}
@media (max-width:860px){
  .svc-two{grid-template-columns:1fr;gap:36px}
  .svc-clients{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .svc-hero{padding:56px 0 48px}
  .svc-grid,.svc-related,.why-grid,.svc-clients,.svc-steps{grid-template-columns:1fr}
  .quote-band{padding:34px 24px}
  .proof{padding:48px 0}
  .proof-stats b{font-size:1.9rem}
}

/* Capability statement (capability-statement.html), designed to print on A4 */
.cap{max-width:900px}
.cap-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;border-bottom:3px solid var(--navy);padding-bottom:22px;margin-bottom:28px}
.cap-head img{height:44px;width:auto}
.cap-head .org{font-family:var(--serif);font-size:1.25rem;color:var(--navy);margin-top:12px;font-weight:400;line-height:1.4;letter-spacing:0;margin-bottom:0}
.cap-head .tl{font-family:var(--serif);font-style:italic;color:var(--teal-deep)}
.cap-head .contact{font-family:var(--sans);font-size:.86rem;color:var(--slate);text-align:right;line-height:1.7}
section > .wrap.cap h2,.cap h2{margin:26px 0 10px;max-width:none;line-height:1.3;font-family:var(--mono);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep);font-weight:500}
.cap p,.cap li{font-family:var(--sans);font-size:.93rem;line-height:1.6;color:var(--slate)}
.cap .cap-cols{display:grid;grid-template-columns:1fr 1fr;gap:6px 36px}
.cap .cap-svc{margin:0 0 10px;font-family:var(--sans);font-size:.9rem;line-height:1.55;color:var(--slate)}
.cap .cap-svc b{display:block;font-family:var(--serif);font-weight:500;color:var(--navy);font-size:1.02rem}
.cap ul{margin:0;padding-left:18px}
.cap .cap-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:6px 0}
.cap .cap-stats div{background:var(--tint);padding:14px}
.cap .cap-stats b{display:block;font-family:var(--mono);font-size:1.5rem;font-weight:500;color:var(--navy)}
.cap .cap-stats span{font-family:var(--sans);font-size:.78rem;color:var(--slate-soft)}
.cap-tools{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}
@media (max-width:640px){.cap .cap-cols,.cap .cap-stats{grid-template-columns:1fr 1fr}.cap-head .contact{text-align:left}}
@media print{
  @page{size:A4;margin:11mm 13mm 10mm}
  header.site,footer.site,.cap-tools,.wa-float,.no-print{display:none!important}
  body{background:#fff}
  section{padding:0!important;background:#fff!important}
  .wrap{padding:0;max-width:none}
  .cap p,.cap li,.cap .cap-svc{font-size:8.7pt;line-height:1.36}
  .cap .cap-svc{margin-bottom:6px}
  .cap .cap-svc b{font-size:10.5pt}
  .cap-head{padding-bottom:12px;margin-bottom:12px}
  .cap .cap-stats div{padding:8px 10px}
  .cap .cap-stats b{font-size:15pt}
  section > .wrap.cap h2,.cap h2{margin:12px 0 5px}
  .cap .cap-stats{grid-template-columns:repeat(4,1fr)}
  .cap .cap-cols{grid-template-columns:1fr 1fr}
  a{color:inherit;text-decoration:none}
}

/* Services hub: the two service groups at the top of services.html, in the same flat card style as .svc-card */
.svc-doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.svc-door{display:flex;flex-direction:column;background:var(--tint);padding:32px 32px 28px;text-decoration:none;color:var(--slate);transition:background-color .2s ease}
a.svc-door:hover{background:var(--tint-2)}
a.svc-door:hover h2{color:var(--teal-deep)}
.svc-door .num{font-family:var(--mono);font-size:.78rem;color:var(--teal-deep)}
.svc-door h2{font-size:clamp(1.45rem,2.4vw,1.85rem);margin:12px 0 8px;max-width:none;transition:color .2s ease}
.svc-hero .svc-door p{font-family:var(--sans);font-size:.94rem;line-height:1.6;color:var(--slate);margin:0 0 12px}
.svc-hero .svc-door p.door-for{font-weight:600;color:var(--navy)}
.svc-door ul{list-style:none;margin:2px 0 16px;padding:0;font-family:var(--sans);font-size:.9rem}
.svc-door li{padding:5px 0 5px 16px;position:relative}
.svc-door li::before{content:"";position:absolute;left:0;top:13px;width:6px;height:6px;border-radius:50%;background:var(--teal)}
.svc-hero .svc-door p.door-from{font-family:var(--mono);font-size:.8rem;color:var(--slate-soft)}
.svc-door .door-from b{color:var(--navy);font-weight:500}
.svc-door .more{margin-top:auto}
.svc-links{margin-top:28px;display:flex;gap:28px;flex-wrap:wrap}
@media (max-width:760px){
  /* On phones both groups must show near the top: keep each card to its name, audience and starting fee. */
  .svc-doors{grid-template-columns:1fr;gap:12px;margin-top:22px}
  .svc-door{padding:18px 18px 16px}
  .svc-door h2{margin:6px 0 6px}
  .svc-hero .svc-door p.door-for{font-size:.9rem;margin-bottom:8px}
  .svc-door .door-desc,.svc-door ul{display:none}
  .svc-hero .svc-door p.door-from{margin-bottom:10px}
  .svc-hero .lede.svc-lede{font-size:1rem}
}

.quote-band .actions{align-items:center}
.qb-alt,.quote-band p.qb-alt{flex-basis:100%;margin:6px 0 0;font-family:var(--sans);font-size:.86rem;color:#C9D3DE}
.qb-alt a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.guide-help-alt{margin:14px 0 0!important;font-size:.86rem!important}
.guide-help-alt a{font-weight:500!important;color:var(--navy)}


/* Services gateway (2026-10-24): two large rounded entrances. Investor Support is the filled one. */
.svc-gates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:44px}
.svc-gate{display:flex;flex-direction:column;border-radius:24px;padding:40px 40px 34px;text-decoration:none;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.svc-gate:hover{transform:translateY(-3px)}
.svc-gate .gate-tag{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.svc-gate h2{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.1;margin:14px 0 12px;max-width:none}
.svc-hero .svc-gate p{font-family:var(--sans);font-size:1rem;line-height:1.6;margin:0 0 16px}
.svc-gate ul{list-style:none;margin:0 0 20px;padding:0;font-family:var(--sans);font-size:.95rem}
.svc-gate li{padding:6px 0 6px 22px;position:relative}
.svc-gate li::before{content:"";position:absolute;left:0;top:13px;width:10px;height:6px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);opacity:.8}
.svc-hero .svc-gate p.gate-from{font-family:var(--mono);font-size:.82rem;margin:auto 0 22px;padding-top:6px}
.svc-gate .gate-from b{font-weight:600}
.svc-gate .gate-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:14px 26px;font-family:var(--sans);font-weight:600;font-size:.95rem;transition:gap .2s ease}
.svc-gate:hover .gate-btn{gap:16px}
.svc-gate .gate-btn i{font-style:normal}
.svc-gate--research{background:var(--tint);border:1px solid var(--tint-2);color:var(--slate)}
.svc-gate--research:hover{box-shadow:0 18px 40px rgba(17,38,63,.10)}
.svc-gate--research .gate-tag{color:var(--teal-deep)}
.svc-gate--research h2{color:var(--navy)}
.svc-hero .svc-gate--research p{color:var(--slate)}
.svc-gate--research li::before{color:var(--teal)}
.svc-gate--research .gate-from b{color:var(--navy)}
.svc-gate--research .gate-btn{background:var(--navy);color:#fff}
.svc-gate--investor{background:linear-gradient(135deg,#0f7a6e 0%,#17a493 100%);color:#e9f7f4}
.svc-gate--investor::after{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.28),transparent 68%);pointer-events:none}
.svc-gate--investor:hover{box-shadow:0 22px 48px rgba(17,38,63,.35)}
.svc-gate--investor .gate-tag{color:#c9f3ec}
.svc-gate--investor h2{color:#fff}
.svc-hero .svc-gate--investor p{color:#d9f5f0}
.svc-gate--investor li::before{color:#fff}
.svc-gate--investor .gate-from b{color:#fff}
.svc-gate--investor .gate-btn{background:#fff;color:var(--teal-deep)}
.svc-gate--investor:hover .gate-btn{background:var(--tint)}
@media (max-width:900px){
  .svc-gates{grid-template-columns:1fr;gap:16px;margin-top:28px}
  .svc-gate{padding:28px 24px 24px;border-radius:20px}
}
