.subpage-hero {
  min-height: 720px;
  position: relative;
  display: flex;
  align-items: flex-end;
  padding: 160px 0 82px;
  color: var(--white);
  background: var(--ink) var(--hero-image) center/cover no-repeat;
  overflow: hidden;
}
.subpage-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,16,13,.96) 0%,rgba(4,16,13,.83) 46%,rgba(4,16,13,.22) 100%),linear-gradient(0deg,rgba(4,16,13,.7),transparent 55%); }
.subpage-hero::after { content:""; position:absolute; inset:0; opacity:.2; background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(90deg,black,transparent 70%); }
.subpage-hero .shell { position:relative; z-index:2; }
.breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-bottom:30px; color:rgba(255,255,255,.52); font-size:.72rem; font-weight:700; }
.breadcrumb a { text-decoration:none; }.breadcrumb a:hover { color:var(--accent); }.breadcrumb i { width:4px; height:4px; border-radius:50%; background:var(--accent); }
.subpage-hero-grid { display:grid; grid-template-columns:1.1fr .55fr; align-items:end; gap:85px; }
.subpage-hero h1 { max-width:820px; margin-bottom:25px; font-size:clamp(3.5rem,7.4vw,7rem); line-height:.94; }
.subpage-hero-copy > p { max-width:690px; margin-bottom:34px; color:rgba(255,255,255,.72); font-size:clamp(1.05rem,1.6vw,1.25rem); }
.subpage-hero-actions { display:flex; align-items:center; gap:25px; }
.hero-facts { display:grid; gap:1px; border:1px solid rgba(255,255,255,.15); border-radius:20px; background:rgba(7,25,21,.58); backdrop-filter:blur(14px); overflow:hidden; }
.hero-facts div { display:grid; grid-template-columns:34px 1fr; align-items:center; gap:12px; padding:17px 19px; border-bottom:1px solid rgba(255,255,255,.11); }
.hero-facts div:last-child { border-bottom:0; }
.hero-facts span { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; color:var(--ink); background:var(--accent); font-size:.7rem; font-weight:900; }
.hero-facts strong { font-size:.82rem; line-height:1.25; }

.service-switcher { position:relative; z-index:5; margin-top:-29px; }
.service-switcher-inner { display:flex; align-items:center; gap:8px; padding:9px; border:1px solid var(--line); border-radius:999px; background:var(--white); box-shadow:0 16px 45px rgba(7,25,21,.12); overflow-x:auto; scrollbar-width:none; }
.service-switcher-inner::-webkit-scrollbar { display:none; }
.service-switcher a { flex:0 0 auto; padding:9px 14px; border-radius:999px; color:var(--muted); font-size:.72rem; font-weight:800; text-decoration:none; }
.service-switcher a:hover,.service-switcher a.active { color:var(--white); background:var(--ink); }

.service-intro { padding-top:125px; }
.service-intro-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:110px; align-items:start; }
.service-intro h2 { font-size:clamp(2.8rem,5vw,4.7rem); }
.service-prose { color:var(--muted); font-size:1.05rem; }
.service-prose .lead { color:var(--ink); font-size:1.28rem; font-weight:600; line-height:1.55; }
.service-prose p:last-child { margin-bottom:0; }

.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:70px; }
.benefit-card { min-height:255px; padding:27px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.55); }
.benefit-card span { width:43px; height:43px; display:grid; place-items:center; margin-bottom:36px; border-radius:13px; color:var(--ink); background:var(--accent); font-family:"Manrope",sans-serif; font-size:.72rem; font-weight:800; }
.benefit-card h3 { margin-bottom:11px; font-size:1.18rem; }.benefit-card p { margin:0; color:var(--muted); font-size:.88rem; }

.detail-section { padding-top:95px; }
.detail-split { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; border-radius:var(--radius-lg); background:var(--ink); overflow:hidden; }
.detail-image { min-height:590px; }.detail-image img { width:100%; height:100%; display:block; object-fit:cover; }
.detail-copy { display:flex; flex-direction:column; justify-content:center; padding:65px; color:var(--white); }
.detail-copy .eyebrow { margin-bottom:22px; }.detail-copy h2 { margin-bottom:28px; font-size:clamp(2.6rem,4vw,4.2rem); }.detail-copy > p { color:rgba(255,255,255,.63); }
.included-list { display:grid; gap:0; margin:28px 0 0; padding:0; border-top:1px solid rgba(255,255,255,.14); list-style:none; }
.included-list li { position:relative; padding:15px 0 15px 28px; border-bottom:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.82); font-size:.88rem; font-weight:700; }
.included-list li::before { content:"✓"; position:absolute; left:0; color:var(--accent); font-weight:900; }

.pricing-section { background:#e8ece4; }
.pricing-head { display:grid; grid-template-columns:.85fr 1.15fr; align-items:end; gap:90px; margin-bottom:48px; }
.pricing-head h2 { font-size:clamp(2.8rem,5vw,4.7rem); }
.pricing-head > p { max-width:620px; margin:0; color:var(--muted); font-size:1rem; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.price-card { min-height:320px; display:flex; flex-direction:column; padding:28px; border:1px solid var(--line); border-radius:21px; color:var(--ink); background:rgba(255,255,255,.72); }
.price-card.featured { color:var(--white); border-color:var(--ink); background:var(--ink); box-shadow:0 24px 65px rgba(7,25,21,.14); }
.price-label { display:block; margin-bottom:38px; color:var(--pine); font-size:.67rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.price-card.featured .price-label { color:var(--accent); }
.price-amount { display:flex; align-items:baseline; flex-wrap:wrap; gap:7px; margin-bottom:20px; }
.price-amount strong { font-family:"Manrope",sans-serif; font-size:clamp(2.7rem,4.5vw,4rem); letter-spacing:-.055em; line-height:.95; }
.price-amount small { color:var(--muted); font-size:.72rem; font-weight:700; }
.price-card.featured .price-amount small { color:rgba(255,255,255,.52); }
.price-card > p { margin:0 0 25px; color:var(--muted); font-size:.87rem; }
.price-card.featured > p { color:rgba(255,255,255,.62); }
.price-link { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:17px; border-top:1px solid var(--line); color:var(--ink); font-size:.78rem; font-weight:800; text-decoration:none; }
.price-card.featured .price-link { color:var(--white); border-color:rgba(255,255,255,.14); }
.price-link::after { content:"↗"; width:29px; height:29px; display:grid; place-items:center; border-radius:50%; color:var(--ink); background:var(--accent); }
.pricing-note { margin:20px 0 0; color:var(--muted); font-size:.72rem; line-height:1.55; }

.usecase-section { background:var(--white); }
.usecase-layout { display:grid; grid-template-columns:.65fr 1.35fr; gap:80px; }
.usecase-heading { position:sticky; top:120px; align-self:start; }.usecase-heading h2 { margin-bottom:24px; font-size:clamp(2.7rem,4.5vw,4.4rem); }.usecase-heading > p:last-child { color:var(--muted); }
.usecase-list { border-top:1px solid var(--line); }
.usecase-list article { display:grid; grid-template-columns:54px 1fr; gap:24px; padding:29px 0; border-bottom:1px solid var(--line); }
.usecase-list article > span { color:var(--pine); font-family:"Manrope",sans-serif; font-size:.7rem; font-weight:800; letter-spacing:.12em; }
.usecase-list h3 { margin-bottom:8px; font-size:1.25rem; }.usecase-list p { margin:0; color:var(--muted); font-size:.9rem; }

.service-process { background:#e8ece4; }
.service-process .section-heading { max-width:760px; }
.service-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; counter-reset:service-step; }
.service-step { min-height:300px; position:relative; padding:27px; border-radius:19px; background:var(--white); counter-increment:service-step; }
.service-step::before { content:"0" counter(service-step); display:block; margin-bottom:80px; color:var(--pine); font-family:"Manrope",sans-serif; font-size:.7rem; font-weight:800; letter-spacing:.12em; }
.service-step h3 { margin-bottom:10px; font-size:1.13rem; }.service-step p { margin:0; color:var(--muted); font-size:.85rem; }

.service-faq { background:var(--paper); }
.service-faq .faq-layout { grid-template-columns:.65fr 1.35fr; }

.related-section { padding-top:0; background:var(--paper); }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.related-card { min-height:270px; position:relative; display:flex; align-items:flex-end; padding:25px; border-radius:19px; color:var(--white); background:center/cover no-repeat; text-decoration:none; overflow:hidden; }
.related-card::before { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(4,16,13,.92),rgba(4,16,13,.1)); transition:background .25s ease; }
.related-card:hover::before { background:linear-gradient(0deg,rgba(4,16,13,.97),rgba(4,16,13,.24)); }
.related-card div { position:relative; z-index:1; }.related-card small { color:var(--accent); font-size:.65rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.related-card h3 { margin:6px 0 0; font-size:1.35rem; }

.service-lead { background:var(--paper); }
.service-lead .lead-layout { align-items:start; }
.back-home { display:inline-flex; align-items:center; gap:9px; margin-top:24px; color:var(--pine); font-size:.82rem; font-weight:800; text-decoration:none; }

.story-section { background:var(--paper); }
.story-layout { display:grid; grid-template-columns:.78fr 1.22fr; align-items:center; gap:95px; }
.story-photo { min-height:690px; position:relative; border-radius:var(--radius-lg); background:var(--ink); overflow:hidden; }
.story-photo img { width:100%; height:100%; position:absolute; inset:0; display:block; object-fit:cover; }
.story-photo-badge { position:absolute; left:22px; right:22px; bottom:22px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 19px; border:1px solid rgba(255,255,255,.15); border-radius:15px; color:var(--white); background:rgba(7,25,21,.78); backdrop-filter:blur(14px); }
.story-photo-badge strong { font-size:.82rem; }.story-photo-badge span { color:var(--accent); font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.story-copy h2 { margin-bottom:30px; font-size:clamp(3rem,5.5vw,5.2rem); }
.story-copy .story-lead { color:var(--ink); font-size:1.25rem; font-weight:600; line-height:1.55; }
.story-copy p { color:var(--muted); }
.story-signature { margin-top:32px; padding-top:25px; border-top:1px solid var(--line); }
.story-signature strong { display:block; font-family:"Manrope",sans-serif; font-size:1.08rem; }.story-signature span { color:var(--pine); font-size:.72rem; font-weight:800; }

.contact-options-section { padding-bottom:55px; background:var(--paper); }
.contact-options { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; }
.contact-option { min-height:245px; display:flex; flex-direction:column; justify-content:space-between; padding:28px; border:1px solid var(--line); border-radius:20px; color:var(--ink); background:rgba(255,255,255,.6); text-decoration:none; transition:transform .25s ease,background .25s ease,box-shadow .25s ease; }
.contact-option:hover { transform:translateY(-5px); background:var(--white); box-shadow:var(--shadow); }
.contact-option > span { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:var(--ink); background:var(--accent); font-family:"Manrope",sans-serif; font-size:.7rem; font-weight:800; }
.contact-option small { display:block; margin-bottom:7px; color:var(--pine); font-size:.65rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.contact-option strong { display:block; font-size:clamp(1.15rem,2vw,1.5rem); line-height:1.2; }
.contact-option p { margin:10px 0 0; color:var(--muted); font-size:.8rem; }
.contact-page-lead { padding-top:75px; }
.contact-note { margin-top:25px; padding:18px 20px; border:1px solid var(--line); border-radius:15px; color:var(--muted); background:rgba(255,255,255,.5); font-size:.82rem; }
.contact-note strong { color:var(--ink); }

@media (max-width:900px) {
  .subpage-hero-grid { grid-template-columns:1fr; gap:45px; }.hero-facts { max-width:560px; grid-template-columns:repeat(3,1fr); }.hero-facts div { grid-template-columns:28px 1fr; }.service-intro-grid,.usecase-layout,.story-layout,.pricing-head { grid-template-columns:1fr; gap:45px; }.story-photo { min-height:620px; max-width:620px; }.usecase-heading { position:static; }.benefit-grid,.pricing-grid { grid-template-columns:1fr 1fr; }.detail-split { grid-template-columns:1fr; }.detail-image { min-height:430px; }.service-steps { grid-template-columns:1fr 1fr; }.service-faq .faq-layout { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .subpage-hero { min-height:760px; padding:125px 0 65px; background-position:58% center; }.subpage-hero::before { background:linear-gradient(0deg,rgba(4,16,13,.96),rgba(4,16,13,.7) 72%,rgba(4,16,13,.55)); }.subpage-hero h1 { font-size:clamp(3.1rem,15vw,4.5rem); }.subpage-hero-actions { align-items:stretch; flex-direction:column; }.subpage-hero-actions .text-link { align-self:flex-start; }.hero-facts { grid-template-columns:1fr; }.service-switcher { margin-top:0; background:var(--white); }.service-switcher-inner { width:100%; border-radius:0; border-width:0 0 1px; box-shadow:none; }.service-intro { padding-top:80px; }.benefit-grid,.contact-options,.pricing-grid { grid-template-columns:1fr; }.benefit-card { min-height:220px; }.story-photo { min-height:480px; }.story-photo-badge { align-items:flex-start; flex-direction:column; gap:4px; }.detail-section { padding-top:35px; }.detail-image { min-height:320px; }.detail-copy { padding:40px 24px; }.price-card { min-height:280px; }.pricing-head { gap:25px; margin-bottom:34px; }.service-steps { grid-template-columns:1fr; }.service-step { min-height:230px; }.service-step::before { margin-bottom:45px; }.usecase-list article { grid-template-columns:40px 1fr; gap:12px; }.related-grid { grid-template-columns:1fr; }.related-card { min-height:230px; }
}
