/* Scoped to the single Sewa Hiace Semarang content page. */
article.landing-page:has(.hiace-page) .page-hero { background:transparent; color:#66798a; padding:0 0 12px; margin-bottom:0; min-height:0; box-shadow:none; }
article.landing-page:has(.hiace-page) .page-hero::before, article.landing-page:has(.hiace-page) .page-hero::after { display:none; }
article.landing-page:has(.hiace-page) .page-hero .eyebrow, article.landing-page:has(.hiace-page) .page-hero p { display:none; }
article.landing-page:has(.hiace-page) .page-hero h1 { color:#536e86; font-size:.8rem; line-height:1.4; letter-spacing:.05em; font-weight:700; text-transform:uppercase; margin:0; }
article.landing-page:has(.hiace-page) .page-content { max-width: 1280px; padding-top: 28px; }
article.landing-page:has(.hiace-page) .page-content > .content { max-width: none; width: 100%; }
.hiace-page, .hiace-page * { box-sizing: border-box; }
.hiace-page { --navy:#0a2545; --deep:#071a31; --blue:#174c79; --orange:#f58a15; --muted:#5d6b7a; --line:#dfe7ed; font-family: Poppins, Arial, sans-serif; color:var(--navy); max-width: 1180px; margin:0 auto 72px; line-height:1.65; }
.hiace-page h1,.hiace-page h2,.hiace-page h3,.hiace-page p { margin:0; }
.hiace-page h1,.hiace-page h2,.hiace-page h3 { line-height:1.2; letter-spacing:-.035em; }
.hiace-page #hiace-title { font-size:clamp(2.2rem,4.4vw,4.2rem); font-weight:800; }
.hiace-page h2 { font-size:clamp(1.7rem,2.7vw,2.7rem); font-weight:800; }
.hiace-page h3 { font-size:1.25rem; font-weight:700; }
.hiace-page a { text-decoration:none; }
.hiace-page img { max-width:100%; display:block; }
.hiace-kicker { display:inline-block; color:#d97400; font-size:.76rem; letter-spacing:.14em; font-weight:800; margin-bottom:14px; }
.hiace-hero { display:grid; grid-template-columns:1.08fr .92fr; gap:0; overflow:hidden; border-radius:28px; background:linear-gradient(135deg,#071a31 0%,#0d3154 100%); min-height:520px; color:#fff; }
.hiace-hero-copy { padding:clamp(32px,5vw,70px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; position:relative; z-index:1; }
.hiace-hero .hiace-kicker { color:#ffb75c; }
.hiace-hero-copy > p:not(.hiace-hero-note) { color:#d9e4ed; font-size:1.04rem; max-width:570px; margin-top:22px; }
.hiace-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; }
.hiace-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:52px; padding:12px 20px; border-radius:12px; font-weight:700; font-size:.91rem; transition:transform .2s,background .2s; }
.hiace-button:hover { transform:translateY(-2px); }
.hiace-button-primary { background:var(--orange); color:#17202b!important; }
.hiace-button-outline { border:1px solid #7891a9; color:#fff!important; }
.hiace-hero-note { color:#b7cadd; font-size:.79rem; margin-top:22px!important; }
.hiace-hero-visual { min-height:420px; position:relative; background:#123b5c; }
.hiace-hero-visual img { width:100%; height:100%; object-fit:cover; object-position:center; }
.hiace-visual-label { position:absolute; bottom:24px; right:24px; color:#fff; background:rgba(7,26,49,.88); border:1px solid rgba(255,255,255,.25); border-radius:100px; padding:9px 16px; font-size:.77rem; font-weight:700; }
.hiace-feature-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding:26px 30px; border:1px solid var(--line); border-radius:18px; background:#fff; margin:-18px 26px 0; position:relative; box-shadow:0 12px 36px rgba(15,47,73,.09); }
.hiace-feature-strip > div { display:flex; gap:14px; align-items:center; }
.hiace-feature-icon { flex:none; display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:#fff2e2; color:#ab5700; font-weight:800; font-size:.8rem; }
.hiace-feature-strip p { font-size:.86rem; line-height:1.4; }
.hiace-feature-strip p span { color:var(--muted); }
.hiace-section { margin-top:95px; scroll-margin-top:95px; }
.hiace-section-heading { display:flex; justify-content:space-between; gap:42px; align-items:end; margin-bottom:30px; }
.hiace-section-heading > div { max-width:650px; }
.hiace-section-heading > p { max-width:400px; color:var(--muted); font-size:.92rem; }
.hiace-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.hiace-card { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; box-shadow:0 8px 26px rgba(12,38,62,.045); display:flex; flex-direction:column; }
.hiace-card-image { position:relative; background:#eef4f7; aspect-ratio:1.38; overflow:hidden; }
.hiace-card-image img { width:100%; height:100%; object-fit:cover; }
.hiace-capacity { position:absolute; left:16px; bottom:15px; border-radius:100px; background:#fff; padding:5px 12px; font-size:.78rem; font-weight:800; box-shadow:0 3px 12px #0002; }
.hiace-card-body { padding:23px; display:flex; flex-direction:column; flex:1; }
.hiace-card-body > p:nth-of-type(1) { color:var(--muted); font-size:.88rem; min-height:3.1em; margin-top:9px; }
.hiace-card-body .hiace-price-label { margin-top:21px; color:var(--muted); font-size:.76rem; }
.hiace-card-body .hiace-price { margin-top:2px; font-size:1.62rem; font-weight:800; color:var(--navy); letter-spacing:-.04em; }
.hiace-card-body .hiace-included { font-size:.82rem; color:#316446; margin-top:6px; }
.hiace-card-link { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); padding-top:15px; margin-top:auto; padding-bottom:1px; color:#154c7c!important; font-size:.88rem; font-weight:800; }
.hiace-card-link:hover { color:#a85800!important; }
.hiace-card-body .hiace-included + .hiace-card-link { margin-top:22px; }
.hiace-price-note { background:#f2f7fa; border-left:4px solid var(--orange); padding:18px 22px; border-radius:4px 12px 12px 4px; margin-top:22px; color:#354b5d; font-size:.85rem; }
.hiace-purpose { padding:54px; border-radius:24px; background:#f3f7fa; }
.hiace-purpose-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.hiace-purpose-grid > div { background:#fff; border-radius:15px; padding:22px; border:1px solid #e4ebf0; }
.hiace-purpose-grid span { color:#f18a13; font-size:1.5rem; }
.hiace-purpose-grid h3 { margin:14px 0 8px; font-size:1.06rem; }
.hiace-purpose-grid p { color:var(--muted); font-size:.83rem; }
.hiace-process { display:grid; grid-template-columns:.75fr 1.25fr; gap:65px; align-items:start; }
.hiace-process > div > p { color:var(--muted); margin-top:16px; }
.hiace-process ol { margin:0; padding:0; list-style:none; counter-reset:step; }
.hiace-process li { counter-increment:step; display:grid; grid-template-columns:50px 1fr; column-gap:16px; padding:18px 0; border-bottom:1px solid var(--line); }
.hiace-process li:before { content:'0' counter(step); grid-row:span 2; display:grid; place-items:center; align-self:start; width:43px; height:43px; border-radius:12px; background:#eaf2f8; color:#174c79; font-size:.82rem; font-weight:800; }
.hiace-process li strong { font-size:1rem; }
.hiace-process li span { color:var(--muted); font-size:.86rem; margin-top:4px; }
.hiace-alt-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.hiace-alt-grid > div { display:grid; gap:2px; background:#fff; border:1px solid var(--line); border-radius:14px; padding:20px 22px; }
.hiace-alt-grid span { color:var(--muted); font-size:.83rem; }
.hiace-alt-grid b { font-size:1.28rem; margin-top:8px; }
.hiace-alt-note { margin-top:14px!important; color:var(--muted); font-size:.82rem; }
.hiace-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; }
.hiace-faq-list { border-top:1px solid var(--line); }
.hiace-faq details { border-bottom:1px solid var(--line); padding:18px 0; }
.hiace-faq summary { cursor:pointer; font-weight:700; padding-right:24px; }
.hiace-faq details p { color:var(--muted); font-size:.87rem; padding:12px 20px 0 0; }
.hiace-final-cta { display:flex; justify-content:space-between; gap:40px; align-items:center; margin-top:96px; padding:48px 54px; background:linear-gradient(120deg,#0b2a4b,#174c79); color:#fff; border-radius:24px; }
.hiace-final-cta .hiace-kicker { color:#ffc174; }
.hiace-final-cta p { color:#d8e5ee; margin-top:12px; max-width:640px; }
.hiace-button-light { background:#fff; color:#0d3154!important; flex:none; }
@media(max-width:960px){ .hiace-hero{grid-template-columns:1fr}.hiace-hero-visual{min-height:350px;max-height:470px}.hiace-feature-strip{margin:-14px 16px 0}.hiace-card-grid{gap:12px}.hiace-card-body{padding:18px}.hiace-purpose{padding:32px}.hiace-purpose-grid{grid-template-columns:repeat(2,1fr)}.hiace-section-heading{align-items:start;flex-direction:column;gap:12px}.hiace-process,.hiace-faq{gap:30px} }
@media(max-width:680px){article.landing-page:has(.hiace-page) .page-content{padding-top:16px}.hiace-page{margin-bottom:40px}.hiace-hero{border-radius:20px}.hiace-hero-copy{padding:32px 24px}.hiace-hero h1{font-size:2.15rem}.hiace-hero-visual{min-height:245px;max-height:300px}.hiace-visual-label{bottom:12px;right:12px;font-size:.67rem}.hiace-actions{width:100%}.hiace-button{width:100%;min-height:48px}.hiace-feature-strip{grid-template-columns:1fr;gap:15px;padding:18px;margin:-8px 12px 0}.hiace-section{margin-top:64px}.hiace-card-grid{grid-template-columns:1fr}.hiace-card-image{aspect-ratio:1.7}.hiace-card-body>p:nth-of-type(1){min-height:0}.hiace-purpose{padding:24px 18px}.hiace-purpose-grid{grid-template-columns:1fr 1fr;gap:9px}.hiace-purpose-grid>div{padding:16px}.hiace-purpose-grid h3{font-size:.94rem}.hiace-purpose-grid p{font-size:.77rem}.hiace-process,.hiace-faq{grid-template-columns:1fr;gap:18px}.hiace-alt-grid{grid-template-columns:1fr}.hiace-final-cta{flex-direction:column;align-items:stretch;padding:30px 24px;margin-top:64px;gap:25px;border-radius:18px}.hiace-final-cta .hiace-button{width:100%} }
@media(max-width:370px){.hiace-purpose-grid{grid-template-columns:1fr}.hiace-hero h1{font-size:1.95rem}}

/* Final overrides for the legacy template's important heading/link rules. */
article.landing-page:has(.hiace-page) .page-hero h1 { font-size:.8rem !important; line-height:1.4 !important; }
article.landing-page:has(.hiace-page) .hiace-hero h2 { color:#fff !important; font-size:clamp(2.2rem,4.4vw,4.2rem) !important; line-height:1.13 !important; }
article.landing-page:has(.hiace-page) .hiace-button { text-decoration:none !important; }
@media(max-width:680px) { article.landing-page:has(.hiace-page) .hiace-hero h2 { font-size:2.15rem !important; } }

/* FAQ uses divs because the content sanitizer strips details and summary. */
article.landing-page:has(.hiace-page) .hiace-faq-item { border-bottom:1px solid #dfe7ed; padding:18px 0; }
article.landing-page:has(.hiace-page) .hiace-faq-item h3 { font-size:1rem; letter-spacing:0; line-height:1.5; }
article.landing-page:has(.hiace-page) .hiace-faq-item p { color:#5d6b7a; font-size:.87rem; margin-top:7px; }
article.landing-page:has(.hiace-page) .hiace-final-cta h2 { color:#fff !important; }
