.pillar-page-v2 { color: var(--color-text); overflow-wrap: anywhere; }
.pillar-page-v2 *, .pillar-page-v2 *::before, .pillar-page-v2 *::after { box-sizing: border-box; }
.pillar-page-v2 [id] { scroll-margin-top: 180px; }
.pillar-page-v2 .container { min-width: 0; }
.pillar-page-v2 .pillar-header { background: linear-gradient(118deg,var(--color-primary),var(--color-primary-light)); padding: 60px 0; }
.pillar-page-v2 .p2-hero-grid { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 48px; }
.pillar-page-v2 .pillar-header__title { max-width: 22ch; font-size: clamp(30px,3.5vw,48px); line-height: 1.22; margin: 0 0 22px; }
.pillar-page-v2 .pillar-header__eyebrow { color: var(--color-accent); }
.pillar-page-v2 .pillar-header__lead { font-size: 16px; line-height: 1.8; margin-bottom: 26px; }
.pillar-page-v2 .p2-hero-points { display:flex; flex-wrap:wrap; gap:10px 20px; padding:0; margin:24px 0 0; list-style:none; font-size:13px; color:#dceaf5; }
.pillar-page-v2 .p2-hero-points li::before { content:'✓'; color:var(--color-accent); margin-right:7px; }
.pillar-page-v2 .p2-hero-image { margin:0; border-radius:var(--border-radius-lg); overflow:hidden; background:var(--color-primary-dark); }
.pillar-page-v2 .p2-hero-image img { display:block; width:100%; height:auto; aspect-ratio: 5/4; object-fit:cover; object-position:center 65%; }
.pillar-page-v2 .p2-hero-image figcaption { padding:16px 20px; color:#fff; font-size:13px; }
.pillar-page-v2 .p2-hero-guide { padding:36px; border:1px solid #ffffff40; background:#ffffff08; }
.pillar-page-v2 .p2-hero-guide span, .pillar-page-v2 .p2-hero-guide a { color:var(--color-accent); }
.pillar-page-v2 .p2-hero-guide span { font-size:12px; letter-spacing:.08em; }
.pillar-page-v2 .p2-hero-guide h2 { color:#fff; font-size:34px; margin:20px 0; }
.pillar-page-v2 .p2-hero-guide p { color:#dceaf5; }
.pillar-page-v2 .p2-toc { padding:20px 0; border-bottom:1px solid var(--color-border); background:var(--color-white); }
.pillar-page-v2 .p2-toc strong { display:block; font-size:11px; letter-spacing:.12em; margin-bottom:12px; }
.pillar-page-v2 .p2-toc-links { display:flex; flex-wrap:wrap; gap:8px; }
.pillar-page-v2 .p2-toc a { display:block; padding:9px 13px; border:1px solid var(--color-border); border-radius:var(--border-radius); font-size:13px; text-decoration:none; }
.pillar-page-v2 .p2-toc a:hover { background:var(--color-primary); color:#fff; }
.pillar-page-v2 .p2-section { padding:56px 0; }
.pillar-page-v2 .p2-section--soft { background:var(--color-bg); }
.pillar-page-v2 h2 { font-size:clamp(24px,2.5vw,34px); line-height:1.3; margin:0 0 20px; }
.pillar-page-v2 h3 { font-size:19px; line-height:1.45; margin:0 0 12px; }
.pillar-page-v2 p { line-height:1.8; }
.pillar-page-v2 .p2-eyebrow { margin:0 0 12px; color:var(--color-secondary); font-size:11px; letter-spacing:.1em; font-weight:600; }
.pillar-page-v2 .p2-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:48px; }
.pillar-page-v2 .p2-intro p:last-child { margin-bottom:0; }
.pillar-page-v2 .p2-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.pillar-page-v2 .p2-heading .btn { flex-shrink:0; }
.pillar-page-v2 .p2-table-wrap { overflow-x:auto; max-width:100%; border:1px solid var(--color-border); background:var(--color-white); border-radius:var(--border-radius-lg); }
.pillar-page-v2 .pillar-table { width:100%; margin:0; min-width:520px; }
.pillar-page-v2 .pillar-table caption { text-align:left; padding:16px 20px; font-size:13px; color:var(--color-text-muted); }
.pillar-page-v2 .pillar-table th,.pillar-page-v2 .pillar-table td { padding:18px 20px; white-space:normal; vertical-align:top; }
.pillar-page-v2 .pillar-table thead th { background:var(--color-primary); color:#fff; }
.pillar-page-v2 .pillar-table tbody th { color:var(--color-primary); min-width:150px; }
.pillar-page-v2 .p2-price { color:var(--color-primary); font-weight:600; min-width:150px; }
.pillar-page-v2 .p2-note { padding:15px 18px; margin:18px 0 0; border-left:3px solid var(--color-accent); background:var(--color-white); color:var(--color-text-muted); font-size:14px; }
.pillar-page-v2 .p2-related { margin:18px 0 0; font-weight:500; }
.pillar-page-v2 .p2-related a, .pillar-page-v2 .pillar-table a { text-decoration:underline; text-underline-offset:3px; }
.pillar-page-v2 .p2-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.pillar-page-v2 .p2-model { min-width:0; border:1px solid var(--color-border); border-radius:var(--border-radius-lg); overflow:hidden; background:var(--color-white); display:flex; flex-direction:column; }
.pillar-page-v2 .p2-model-image { display:block; aspect-ratio:4/3; overflow:hidden; }
.pillar-page-v2 .p2-model-image img { display:block; width:100%; height:100%; object-fit:cover; }
.pillar-page-v2 .p2-model-copy { padding:24px; display:flex; flex-direction:column; align-items:flex-start; flex:1; }
.pillar-page-v2 .p2-model-copy .btn { margin-top:auto; }
.pillar-page-v2 .p2-model-copy p { font-size:14px; color:var(--color-text-muted); }
.pillar-page-v2 .p2-model-label { display:flex; align-items:baseline; justify-content:center; gap:10px; background:var(--color-primary); color:#fff; padding:30px; font-size:64px; font-weight:600; }
.pillar-page-v2 .p2-model-label small { font-size:14px; color:var(--color-accent); }
.pillar-page-v2 .p2-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:28px; }
.pillar-page-v2 .p2-options article { border-top:3px solid var(--color-accent); padding:24px; background:var(--color-white); }
.pillar-page-v2 .p2-options p { margin:0; color:var(--color-text-muted); font-size:14px; }
.pillar-page-v2 .p2-catalog { margin-top:28px; border:1px solid var(--color-border); background:var(--color-white); padding:18px 22px; }
.pillar-page-v2 summary { cursor:pointer; font-weight:500; padding:4px 0; }
.pillar-page-v2 .p2-catalog ul { columns:2; padding-left:20px; }
.pillar-page-v2 .p2-catalog li { padding:7px 0; break-inside:avoid; }
.pillar-page-v2 .p2-compare { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.pillar-page-v2 .p2-compare article { padding:30px; background:var(--color-bg); border:1px solid var(--color-border); }
.pillar-page-v2 .p2-compare ul { padding-left:20px; }
.pillar-page-v2 .p2-compare li { margin:10px 0; line-height:1.7; }
.pillar-page-v2 .p2-formula { padding:16px; background:var(--color-white); border-left:3px solid var(--color-accent); font-size:14px; margin-bottom:0; }
.pillar-page-v2 .p2-process { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; gap:24px; padding:0; margin:24px 0 0; counter-reset:p2-step; }
.pillar-page-v2 .p2-process li { counter-increment:p2-step; }
.pillar-page-v2 .p2-process li::before { content:counter(p2-step,decimal-leading-zero); display:block; color:var(--color-secondary); font-size:30px; border-bottom:2px solid var(--color-accent); padding-bottom:12px; margin-bottom:18px; }
.pillar-page-v2 .p2-process p { color:var(--color-text-muted); font-size:14px; }
.pillar-page-v2 .p2-video { display:block; width:100%; max-width:900px; aspect-ratio:16/9; border:0; margin:28px auto 0; }
.pillar-page-v2 .p2-faq-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:48px; }
.pillar-page-v2 .p2-faq-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.pillar-page-v2 .p2-faq-actions .btn { display:inline-flex; align-items:center; justify-content:center; min-height:44px; }
.pillar-page-v2 .p2-faq { border-bottom:1px solid var(--color-border); padding:16px 0; }
.pillar-page-v2 .p2-faq:first-child { border-top:1px solid var(--color-border); }
.pillar-page-v2 .p2-faq summary { line-height:1.6; }
.pillar-page-v2 .p2-faq p { margin:16px 0 0; color:var(--color-text-muted); }
.pillar-page-v2 .p2-contact { padding:48px 0; background:var(--color-primary); color:#fff; }
.pillar-page-v2 .p2-contact h2 { color:#fff; }
.pillar-page-v2 .p2-contact .p2-eyebrow { color:var(--color-accent); }
.pillar-page-v2 .p2-contact p { color:#dceaf5; }
.pillar-page-v2 .p2-contact-grid { display:grid; grid-template-columns:1.6fr 1fr; gap:48px; align-items:center; }
.pillar-page-v2 .p2-contact-actions { display:grid; gap:12px; }
.pillar-page-v2 .btn--outline-light { border:1px solid #ffffffaa; color:#fff; }
.pillar-page-v2 :is(a,button,summary,[tabindex]):focus-visible { outline:3px solid var(--color-accent); outline-offset:4px; }
@media(max-width:1000px) {
.pillar-page-v2 .p2-hero-grid { gap:28px; }
.pillar-page-v2 .p2-model-grid { gap:16px; }
.pillar-page-v2 .p2-model-copy { padding:20px; }
.pillar-page-v2 .p2-process { grid-template-columns:1fr 1fr; }
.pillar-page-v2 .p2-heading { display:block; }
.pillar-page-v2 .p2-heading .btn { margin-bottom:20px; }
}
@media(max-width:760px) {
.pillar-page-v2 [id] { scroll-margin-top:110px; }
.pillar-page-v2 .pillar-header { padding:36px 0; }
.pillar-page-v2 .p2-hero-grid,.pillar-page-v2 .p2-intro,.pillar-page-v2 .p2-faq-grid,.pillar-page-v2 .p2-contact-grid { grid-template-columns:1fr; gap:24px; }
.pillar-page-v2 .pillar-header__title { max-width:none; }
.pillar-page-v2 .p2-hero-image img { aspect-ratio:16/10; }
.pillar-page-v2 .p2-section { padding:36px 0; }
.pillar-page-v2 .p2-model-grid,.pillar-page-v2 .p2-options,.pillar-page-v2 .p2-compare { grid-template-columns:1fr; gap:20px; }
.pillar-page-v2 .p2-model-image { aspect-ratio:16/10; }
.pillar-page-v2 .p2-catalog ul { columns:1; }
.pillar-page-v2 .p2-compare article { padding:22px; }
.pillar-page-v2 .p2-toc a { font-size:12px; padding:9px 10px; }
}
@media(max-width:420px) {
.pillar-page-v2 .p2-process { grid-template-columns:1fr; gap:12px; }
.pillar-page-v2 .pillar-header__actions { flex-direction:column; align-items:stretch; }
}
@media(prefers-reduced-motion:reduce) { .pillar-page-v2 * { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
.pillar-page-v2 .btn { max-width:100%; white-space:normal; text-align:center; } .pillar-page-v2 .p2-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:20px; align-items:start; padding-top:32px; padding-bottom:40px; }
.pillar-page-v2 .p2-main { min-width:0; }
.pillar-page-v2 .p2-main .container { width:auto; max-width:none; padding-left:0; padding-right:0; margin:0; }
.pillar-page-v2 .p2-main .p2-section { padding:32px 0; border-bottom:1px solid var(--color-border); }
.pillar-page-v2 .p2-main .p2-section--soft { padding:28px 20px; background:var(--color-bg); border:0; border-radius:var(--border-radius-lg); margin:20px 0; }
.pillar-page-v2 .p2-main .p2-section--soft > .container { padding:0; }
.pillar-page-v2 .p2-main .pillar-benefits,.pillar-page-v2 .p2-main .pillar-commitment { background:var(--color-bg); }
.pillar-page-v2 .p2-main .pillar-commitment { padding:28px 20px; border:0; border-radius:var(--border-radius-lg); }
.pillar-page-v2 .p2-main .p2-intro,.pillar-page-v2 .p2-main .p2-faq-grid { grid-template-columns:1fr; gap:16px; }
.pillar-page-v2 .p2-main .p2-model-grid { grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.pillar-page-v2 .p2-main .p2-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pillar-page-v2 .p2-main .p2-process { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pillar-page-v2 .p2-main .pillar-benefits__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pillar-page-v2 .p2-projects { margin-top:28px; }
.pillar-page-v2 .p2-products { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pillar-page-v2 .p2-sidebar { display:grid; gap:20px; align-content:start; }
.pillar-page-v2 .p2-sidebar h2 { font-size:20px; line-height:1.35; letter-spacing:normal; margin:0 0 14px; }
.pillar-page-v2 .p2-sidebar .toc-box h2,.pillar-page-v2 .p2-sidebar .projects-box h2 { font-size:13px; letter-spacing:.12em; }
.pillar-page-v2 .p2-toc--mobile { display:none; }
.pillar-page-v2 .view-all-link { display:inline-block; margin-top:20px; }
@media(max-width:1000px) {
.pillar-page-v2 .p2-layout { grid-template-columns:1fr; }
.pillar-page-v2 .p2-sidebar .toc-box { display:none; }
.pillar-page-v2 .p2-toc--mobile { display:block; }
}
@media(max-width:600px) {
.pillar-page-v2 .p2-main .p2-model-grid,.pillar-page-v2 .p2-main .p2-options,.pillar-page-v2 .p2-main .p2-process,.pillar-page-v2 .p2-main .pillar-benefits__grid,.pillar-page-v2 .p2-products { grid-template-columns:1fr; }
.pillar-page-v2 .p2-main .p2-section--soft,.pillar-page-v2 .p2-main .pillar-commitment { padding:24px 18px; }
}
.pillar-page-v2 .p2-main .p2-model-grid { gap:12px; }
.pillar-page-v2 .p2-main .p2-model-copy { padding:20px 18px; } .pillar-page-v2 .p2-model-image.rental-option-gallery { margin:0; border-radius:0; aspect-ratio:4/3; }
.pillar-page-v2 .p2-model-image .rental-option-gallery__main { height:100%; }
.pillar-page-v2 .p2-model-image .rental-option-gallery__main.p2-gallery--single::after { display:none; }
.pillar-page-v2 .p2-area-list { padding-left:20px; margin:18px 0 0; }
.pillar-page-v2 .p2-area-list li { margin:10px 0; line-height:1.7; }
.pillar-page-v2 .p2-price-summary { margin:0 0 16px; padding:14px 18px; background:var(--color-white); border-left:3px solid var(--color-accent); }
.pillar-page-v2 .p2-model-copy > .btn { align-self:stretch; width:100%; }
.pillar-page-v2 .p2-specs { width:100%; margin:4px 0 20px; }
.pillar-page-v2 .p2-specs div { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-top:1px solid var(--color-border); font-size:13px; line-height:1.5; }
.pillar-page-v2 .p2-specs dt { flex:0 0 auto; color:var(--color-text-muted); }
.pillar-page-v2 .p2-specs dd { margin:0; text-align:right; font-weight:600; color:var(--color-primary); }
.pillar-page-v2 .p2-price-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.pillar-page-v2 .p2-price-conditions { margin-top:18px; padding:20px; border:1px solid var(--color-border); border-radius:var(--border-radius-lg); background:var(--color-white); }
.pillar-page-v2 .p2-price-conditions h3 { margin-bottom:10px; }
.pillar-page-v2 .p2-price-conditions ul { margin:0; padding-left:22px; list-style:disc outside; }
.pillar-page-v2 .p2-price-conditions li { display:list-item; margin:9px 0; padding-left:4px; line-height:1.7; list-style:disc outside; }
.pillar-page-v2 .p2-price-conditions li::marker { color:var(--color-accent); font-size:1.05em; }
@media(max-width:480px) { .pillar-page-v2 .p2-price-actions .btn { flex:1 1 100%; } }