/**
 * Pacific ADU Builders — interior pages (products, FAQ, about, blog, single)
 * Loaded on all non-front templates.
 */

/* ---------- PAGE HERO (generic) ---------- */
.pab-page-hero { background: var(--pab-cream); border-bottom: 1px solid var(--pab-border); }
.pab-page-hero__inner { padding-block: clamp(3rem, 6vw, 4.5rem); max-width: 720px; }
.pab-page-hero h1 { margin-bottom: 1rem; }
.pab-page-hero p { font-size: var(--pab-body-xl); }
.pab-breadcrumbs { font-size: 0.8125rem; color: var(--pab-muted); margin-bottom: 1rem; }
.pab-breadcrumbs a { color: var(--pab-text-secondary); }
.pab-breadcrumbs span[aria-current] { color: var(--pab-green); }

/* ---------- CHECK LISTS (shared) ---------- */
.pab-check-list { list-style: none; display: grid; gap: .625rem; }
.pab-check-list li { position: relative; padding-left: 1.6rem; font-size: var(--pab-body-sm); color: var(--pab-text-secondary); }
.pab-check-list li::before { content: ""; position: absolute; left: 0; top: .3em; width: 14px; height: 8px; border-left: 2px solid var(--pab-green); border-bottom: 2px solid var(--pab-green); transform: rotate(-45deg); }
.pab-check-list--x li::before { border: 0; content: "\00d7"; color: var(--pab-muted); top: 0; left: .15em; font-size: 1.1rem; transform: none; }

/* ---------- PRODUCT DETAIL PAGE (PDP) ---------- */
.pab-crumbs { border-bottom: 1px solid var(--pab-border); font-size: 0.8125rem; }
.pab-crumbs .pab-container { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; padding-block: 1.25rem; }
.pab-crumbs a { color: var(--pab-text-secondary); }
.pab-crumbs a:hover { color: var(--pab-green); }
.pab-crumbs span[aria-hidden] { color: var(--pab-muted); }
.pab-crumbs span[aria-current] { color: var(--pab-green); font-weight: 600; }

.pab-pdp-hero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
@media (max-width: 940px) { .pab-pdp-hero__grid { grid-template-columns: 1fr; } }

.pab-pdp-gallery__main { position: relative; aspect-ratio: 635 / 480; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); }
.pab-pdp-gallery__main img { width: 100%; height: 100%; object-fit: cover; }
.pab-pdp-gallery__thumbs { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 10px; }
.pab-pdp-gallery__thumbs li { position: relative; aspect-ratio: 1; border-radius: var(--pab-radius); overflow: hidden; background: var(--pab-icon-bg); cursor: pointer; }
.pab-pdp-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; }

.pab-pdp-info h1 { margin: .5rem 0 1rem; }
.pab-pdp-info__lead { font-size: var(--pab-body-xl); color: var(--pab-text); font-family: var(--pab-font-serif); margin-bottom: 1.25rem; }
.pab-pdp-info__desc p { margin-bottom: 1rem; }
.pab-pdp-tags { list-style: none; display: flex; flex-wrap: wrap; gap: .625rem; margin: 1.5rem 0; }
.pab-tag { display: inline-flex; align-items: center; gap: .375rem; font-size: 0.8125rem; font-weight: 600; color: var(--pab-green); background: transparent; border: 1px solid var(--pab-icon-bg); border-radius: var(--pab-radius); padding: .4rem .875rem; }
.pab-tag svg { flex-shrink: 0; }

.pab-specs { display: flex; flex-direction: column; gap: 1.5rem; background: var(--pab-review-bg); border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); padding: 2rem; }
.pab-specs__label { font-size: 0.6875rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pab-text-secondary); margin: 0; }
.pab-specs__list { display: grid; }
.pab-specs__row { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--pab-border); }
.pab-specs__row dt { color: var(--pab-text-secondary); font-size: var(--pab-body-sm); margin: 0; }
.pab-specs__row dd { margin: 0; font-weight: 600; font-size: var(--pab-body-sm); color: var(--pab-text); }
.pab-specs__price { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1rem; margin: 0; }
.pab-specs__price-label { color: var(--pab-text); font-weight: 600; font-size: var(--pab-body); }
.pab-specs__price-value { font-family: var(--pab-font-serif); font-size: 1.375rem; color: var(--pab-green); }

.pab-floorplan { aspect-ratio: 1300 / 340; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); display: flex; align-items: center; justify-content: center; text-align: center; }
.pab-floorplan img { width: 100%; height: 100%; object-fit: contain; }
.pab-floorplan .pab-photo-ph { align-items: center; justify-content: center; }
.pab-floorplan .pab-photo-ph__label { text-align: center; }

.pab-room-card { background: #fff; border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); overflow: hidden; }
.pab-room-card__photo { position: relative; aspect-ratio: 420 / 200; background: var(--pab-icon-bg); }
.pab-room-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.pab-room-card__body { padding: 1.5rem; }
.pab-room-card__body h3 { font-family: var(--pab-font-sans); font-weight: 600; font-size: 1.0625rem; margin-bottom: .5rem; }
.pab-room-card__body p { font-size: var(--pab-body-sm); line-height: 1.55; }

.pab-optionrow .pab-section-head { max-width: 560px; }
.pab-option-card { background: #fff; border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); overflow: hidden; }
.pab-option-card__media { position: relative; aspect-ratio: 420 / 180; background: var(--pab-icon-bg); }
.pab-option-card__media img { width: 100%; height: 100%; object-fit: cover; }
.pab-option-card__body { padding: 1.5rem; }
.pab-option-card__body h3 { font-family: var(--pab-font-sans); font-weight: 600; font-size: 1.0625rem; margin-bottom: .875rem; }
.pab-option-card__list { list-style: none; display: grid; gap: .5rem; }
.pab-option-card__list li { position: relative; padding-left: 1rem; font-size: var(--pab-body-sm); color: var(--pab-text-secondary); }
.pab-option-card__list li::before { content: "–"; position: absolute; left: 0; color: var(--pab-muted); }

/* Standard product layout: text + photo hero */
.pab-stdhero--border { border-bottom: 1px solid var(--pab-border); }
.pab-stdhero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
.pab-stdhero__text h1 { margin: .5rem 0 1.25rem; }
.pab-stdhero__lead { font-size: var(--pab-body-lg); color: var(--pab-text-secondary); max-width: 34rem; }
.pab-stdhero__actions { margin-top: 1.75rem; }
.pab-stdhero__media { position: relative; aspect-ratio: 480 / 360; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); }
.pab-stdhero__media img { width: 100%; height: 100%; object-fit: cover; }
.pab-stdhero__media--flat { border-radius: var(--pab-radius-lg) var(--pab-radius-lg) 0 0; }
@media (max-width: 860px) { .pab-stdhero__grid { grid-template-columns: 1fr; } .pab-stdhero__media { order: -1; } }

/* Standard product layout: facts + specs */
.pab-facts__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.pab-facts__body h2 { margin-bottom: 1.25rem; max-width: 32rem; }
.pab-facts__desc p { margin-bottom: 1rem; }
.pab-facts__checklist { margin-top: 1.5rem; gap: .875rem; }
@media (max-width: 860px) { .pab-facts__grid { grid-template-columns: 1fr; } }

/* Steps / benefits section (Custom ADU) */
.pab-steps-sec__head { max-width: 620px; margin-bottom: 2.5rem; }
.pab-steps-sec__head h2 { max-width: 32rem; }
.pab-steps-sec .pab-grid--3 { gap: 0; border-top: 1px solid var(--pab-border); }
.pab-step-item { padding: 2rem 1.75rem 0 0; }
.pab-step-item__num { display: block; font-size: 0.6875rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pab-green); margin: 1rem 0 .5rem; }
.pab-step-item h3 { font-family: var(--pab-font-sans); font-weight: 600; font-size: 1.0625rem; margin-bottom: .625rem; }
.pab-step-item p { font-size: var(--pab-body-sm); line-height: 1.55; color: var(--pab-text-secondary); }
@media (max-width: 720px) { .pab-step-item { padding-right: 0; } }

.pab-included__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; align-items: start; }
@media (max-width: 820px) { .pab-included__grid { grid-template-columns: 1fr; } }
.pab-included-card { background: #fff; border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); padding: 2rem; }
.pab-included-card__label { display: flex; align-items: center; gap: .5rem; font-size: 0.6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--pab-muted); margin-bottom: 1.25rem; }
.pab-included-card__label--yes { color: var(--pab-green); }
.pab-included-card__label svg { color: var(--pab-green); }
.pab-included-card__list { display: grid; gap: .625rem; }
.pab-included-card__note { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--pab-border); font-size: var(--pab-body-sm); color: var(--pab-text-secondary); }

/* ---------- FAQ ACCORDION (flat, full-width rows) ---------- */
.pab-accordion { display: grid; border-top: 1px solid var(--pab-border); }
.pab-accordion__item { border-bottom: 1px solid var(--pab-border); }
.pab-accordion__heading { margin: 0; }
.pab-accordion__trigger { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; width: 100%; text-align: left; background: none; border: 0; padding: 1.5rem 0; font-family: var(--pab-font-sans); font-weight: 600; font-size: 1.0625rem; color: var(--pab-text); }
.pab-accordion__trigger:hover { color: var(--pab-green); }
.pab-accordion__icon { flex-shrink: 0; color: var(--pab-muted); transition: transform var(--pab-transition), color var(--pab-transition); }
.pab-accordion__trigger:hover .pab-accordion__icon { color: var(--pab-green); }
.pab-accordion__trigger[aria-expanded="true"] .pab-accordion__icon { transform: rotate(180deg); color: var(--pab-green); }
.pab-accordion__panel { max-height: 0; overflow: hidden; transition: max-height 260ms ease; }
.pab-accordion__panel-inner { padding: 0 0 1.5rem; max-width: 760px; font-size: var(--pab-body); line-height: 1.6; color: var(--pab-text-secondary); }

/* Photo-hero optional CTA button */
.pab-phero__actions { margin-top: 1.5rem; }

/* Callout block ("Still have questions?", etc.) */
.pab-callout { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap; margin-top: 2.5rem; padding: clamp(1.5rem, 3vw, 2.25rem); background: var(--pab-cream); border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); }
.pab-callout__text h2 { font-size: 1.5rem; margin-bottom: .375rem; }
.pab-callout__text p { max-width: 28rem; }
@media (max-width: 620px) { .pab-callout { flex-direction: column; align-items: flex-start; } }

/* ---------- ABOUT ---------- */
.pab-about__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 5rem); }
.pab-about__col h2 { margin: .5rem 0 1.25rem; }
.pab-about__col p { margin-bottom: 1rem; }
.pab-about__col--promise .pab-eyebrow { text-align: right; }
.pab-about__checklist { list-style: none; display: grid; gap: 1rem; margin-top: 1.75rem; }
.pab-about__checklist li { display: flex; align-items: center; gap: .75rem; font-size: var(--pab-body); font-weight: 500; color: var(--pab-text); }
.pab-about__checklist svg { color: var(--pab-green); flex-shrink: 0; }
@media (max-width: 820px) { .pab-about__grid { grid-template-columns: 1fr; gap: 2.5rem; } }

/* Behind the build — 2-col photo grid */
.pab-behind__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pab-behind__card { aspect-ratio: 645 / 367; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); }
.pab-behind__card img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px) { .pab-behind__grid { grid-template-columns: 1fr; } }

/* ---------- BLOG / CONTENT ---------- */
.pab-content { max-width: 760px; margin-inline: auto; }
.pab-content h2, .pab-content h3 { margin-top: 2rem; }
.pab-content p, .pab-content li { color: var(--pab-text-secondary); }
.pab-content ul, .pab-content ol { padding-left: 1.25rem; margin-bottom: 1rem; }
.pab-content img { border-radius: var(--pab-radius-lg); margin-block: 1.5rem; }
.pab-content blockquote { border-left: 3px solid var(--pab-green); padding-left: 1.25rem; margin: 1.5rem 0; font-style: italic; color: var(--pab-text); }

.pab-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
@media (max-width: 900px) { .pab-post-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .pab-post-grid { grid-template-columns: 1fr; } }
.pab-post-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); overflow: hidden; transition: box-shadow var(--pab-transition), transform var(--pab-transition); }
.pab-post-card:hover { box-shadow: var(--pab-shadow); transform: translateY(-2px); }
.pab-post-card__media { aspect-ratio: 16/9; background: var(--pab-icon-bg); }
.pab-post-card__media img { width: 100%; height: 100%; object-fit: cover; }
.pab-post-card__body { padding: 1.5rem; display: flex; flex-direction: column; flex: 1; }
.pab-post-card__meta-row { display: flex; align-items: center; gap: .75rem; margin-bottom: .875rem; }
.pab-post-card__date { font-size: 0.75rem; color: var(--pab-muted); }
.pab-post-card__title { font-size: 1.1875rem; line-height: 1.25; margin-bottom: .5rem; }
.pab-post-card__title a, .pab-featured__title a { color: var(--pab-text); }
.pab-post-card__title a:hover, .pab-featured__title a:hover { color: var(--pab-green); }
.pab-post-card__excerpt { font-size: var(--pab-body-sm); line-height: 1.55; margin-bottom: 1rem; }
.pab-post-card__more { margin-top: auto; font-weight: 600; font-size: var(--pab-body-sm); color: var(--pab-green); }
.pab-tag-chip { display: inline-flex; align-items: center; font-size: 0.6875rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--pab-text-secondary); background: var(--pab-cream); border-radius: var(--pab-radius); padding: .25rem .625rem; }

/* ---------- BLOG ---------- */
.pab-blog-hero { background: var(--pab-cream); border-bottom: 1px solid var(--pab-border); }
.pab-blog-hero .pab-container { padding-block: clamp(2.5rem, 5vw, 3.5rem); }
.pab-blog-hero h1 { margin-bottom: .75rem; }
.pab-blog-hero__sub { font-size: var(--pab-body-lg); color: var(--pab-text-secondary); max-width: 32rem; margin-bottom: 1.75rem; }
.pab-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.pab-chip { font-size: var(--pab-body-sm); font-weight: 500; color: var(--pab-text-secondary); background: #fff; border: 1.5px solid #c4b9a5; border-radius: var(--pab-radius); padding: .4rem 1rem; }
.pab-chip:hover { border-color: var(--pab-green); color: var(--pab-green); }
.pab-chip.is-active { background: var(--pab-green); border-color: var(--pab-green); color: #fff; }

.pab-featured__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
.pab-featured__media { aspect-ratio: 560 / 300; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); }
.pab-featured__media img { width: 100%; height: 100%; object-fit: cover; }
.pab-featured__title { font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2rem); margin: .875rem 0 .75rem; }
.pab-featured__excerpt { color: var(--pab-text-secondary); margin-bottom: 1.25rem; }
@media (max-width: 820px) { .pab-featured__grid { grid-template-columns: 1fr; } .pab-featured__media { order: -1; } }

.pab-loadmore { display: flex; justify-content: center; margin-top: 3rem; }
.pab-loadmore a { display: inline-flex; align-items: center; justify-content: center; font-family: var(--pab-font-sans); font-weight: 600; font-size: 0.9375rem; padding: 0.875rem 1.75rem; border-radius: var(--pab-radius); border: 1px solid var(--pab-border); background: #fff; color: var(--pab-text); transition: border-color var(--pab-transition), color var(--pab-transition); }
.pab-loadmore a:hover { border-color: var(--pab-green); color: var(--pab-green); }

/* ---------- SINGLE ARTICLE ---------- */
.pab-article__header { background: var(--pab-cream); border-bottom: 1px solid var(--pab-border); }
.pab-article__header-inner { padding-block: clamp(2.5rem, 5vw, 3.5rem); max-width: 760px; margin-inline: auto; }
.pab-article__meta { display: flex; align-items: center; gap: .875rem; margin: 1.25rem 0 1rem; font-size: var(--pab-body-sm); color: var(--pab-muted); }
.pab-article__header h1 { font-size: clamp(1.875rem, 1.4rem + 2.2vw, 2.75rem); }
.pab-article__byline { display: flex; align-items: center; gap: .625rem; margin-top: 1.25rem; font-size: var(--pab-body-sm); font-weight: 600; color: var(--pab-text); }
.pab-article__avatar { border-radius: 50%; }
.pab-article__media { max-width: 900px; margin: clamp(1.5rem, 4vw, 2.5rem) auto 0; border-radius: var(--pab-radius-lg); overflow: hidden; }
.pab-article__media img { width: 100%; height: auto; display: block; }
.pab-article__content { padding-top: clamp(2rem, 4vw, 2.75rem); }
.pab-article__footer { max-width: 760px; margin: 2.5rem auto 0; padding-top: 1.5rem; border-top: 1px solid var(--pab-border); display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.pab-article__tags a { font-size: 0.8125rem; color: var(--pab-muted); }
.pab-article__tags a:not(:last-child)::after { content: ","; }

.pab-pagination { display: flex; justify-content: center; gap: .5rem; margin-top: 3rem; }
.pab-pagination a, .pab-pagination span { padding: .5rem .875rem; border: 1px solid var(--pab-border); border-radius: var(--pab-radius); font-size: var(--pab-body-sm); }
.pab-pagination .current { background: var(--pab-green); color: #fff; border-color: var(--pab-green); }

/* ---------- INLINE CONSULTATION / FORM SECTION ---------- */
.pab-form-section__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: start; }
@media (max-width: 820px) { .pab-form-section__grid { grid-template-columns: 1fr; } }
.pab-form-card { background: #fff; border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); padding: clamp(1.5rem, 3vw, 2.25rem); }

/* ---------- PHOTO HERO (reusable: About, Consultation…) ---------- */
.pab-phero { position: relative; color: #fff; overflow: hidden; }
.pab-phero__bg { position: absolute; inset: 0; z-index: 0; }
.pab-phero__bg img, .pab-phero__bg .pab-photo-ph { width: 100%; height: 100%; object-fit: cover; }
.pab-phero__bg::after { content: ""; position: absolute; inset: 0; background: rgba(30, 34, 28, 0.68); }
.pab-phero__inner { position: relative; z-index: 1; padding-block: clamp(2.75rem, 6vw, 4rem); }
.pab-phero h1 { color: #fff; margin-bottom: 1rem; }
.pab-phero__sub { color: rgba(255,255,255,.85); font-size: var(--pab-body-lg); }
.pab-phero--short .pab-phero__inner { padding-block: clamp(2.5rem, 5vw, 3.5rem); }
/* Left variant: keep the full-width centered container, constrain the text */
.pab-phero--left { text-align: left; }
.pab-phero--left h1 { max-width: 640px; }
.pab-phero--left .pab-phero__sub { max-width: 34rem; }
/* Center variant: center a narrower block within the container */
.pab-phero--center { text-align: center; }
.pab-phero--center h1 { max-width: 640px; margin-inline: auto; }
.pab-phero--center .pab-phero__sub { max-width: 34rem; margin-inline: auto; }
.pab-eyebrow--light { color: #fff; opacity: .85; }

.pab-consult-trust { background: var(--pab-cream); border-bottom: 1px solid var(--pab-border); }
.pab-consult-trust__inner { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 2.5rem; padding-block: 1.5rem; }
.pab-consult-trust__item { display: inline-flex; align-items: center; gap: .5rem; font-size: var(--pab-body-sm); font-weight: 500; color: var(--pab-text-secondary); }
.pab-consult-trust__item svg { color: var(--pab-green); flex-shrink: 0; }

.pab-consult-form__inner { max-width: 600px; margin-inline: auto; }
.pab-consult-form__lead { text-align: center; color: var(--pab-text-secondary); margin-bottom: 1.5rem; }

/* ---------- LEGAL / DOCUMENT ---------- */
.pab-legal-hero { background: var(--pab-cream); border-bottom: 1px solid var(--pab-border); }
.pab-legal-hero__inner { padding-block: clamp(2.5rem, 5vw, 3.5rem); }
.pab-legal-hero h1 { margin: .75rem 0 .625rem; }
.pab-legal-hero__updated { font-size: var(--pab-body-sm); color: var(--pab-muted); }
.pab-legal__grid { display: grid; grid-template-columns: 200px 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: start; }
.pab-legal__toc { position: sticky; top: 100px; }
.pab-legal__toc-title { font-size: 0.6875rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pab-muted); margin-bottom: 1rem; }
.pab-legal__toc ul { list-style: none; display: grid; gap: .75rem; }
.pab-legal__toc a { font-size: var(--pab-body-sm); color: var(--pab-text-secondary); }
.pab-legal__toc a:hover { color: var(--pab-green); }
.pab-legal__body { max-width: 760px; }
.pab-legal__body h2 { scroll-margin-top: 100px; margin-top: 2rem; padding-top: 2rem; border-top: 1px solid var(--pab-border); }
.pab-legal__body h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.pab-legal-contact { margin-top: 1.25rem; padding: 1.5rem; background: var(--pab-cream); border: 1px solid var(--pab-border); border-radius: var(--pab-radius-lg); font-size: var(--pab-body-sm); line-height: 1.9; color: var(--pab-text-secondary); }
.pab-legal-contact strong { color: var(--pab-text); }
@media (max-width: 820px) {
	.pab-legal__grid { grid-template-columns: 1fr; }
	.pab-legal__toc { position: static; padding-bottom: 1.5rem; margin-bottom: 1rem; border-bottom: 1px solid var(--pab-border); }
	.pab-legal__toc ul { grid-template-columns: 1fr 1fr; }
}

/* ---------- LANDING (ADS) ---------- */
.pab-header--minimal { position: static; background: #fff; }
.pab-footer--minimal { padding-block: 1.5rem; }
.pab-footer__mini { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; font-size: 0.8125rem; color: var(--pab-muted); }
.pab-footer__mini a { color: var(--pab-muted); }
.pab-footer__mini a:hover { color: var(--pab-green); }

.pab-lp-hero { position: relative; color: #fff; overflow: hidden; }
.pab-lp-hero__bg { position: absolute; inset: 0; z-index: 0; }
.pab-lp-hero__bg img, .pab-lp-hero__bg .pab-photo-ph { width: 100%; height: 100%; object-fit: cover; }
.pab-lp-hero__bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(30,34,28,.85) 0%, rgba(30,34,28,.6) 55%, rgba(30,34,28,.35) 100%); }
.pab-lp-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 452px; gap: clamp(2rem, 5vw, 4rem); align-items: center; padding-block: clamp(3rem, 6vw, 5rem); }
.pab-lp-hero__text { max-width: 560px; }
.pab-lp-hero h1 { color: #fff; font-size: clamp(2.25rem, 1.6rem + 2.8vw, 3.25rem); margin-bottom: 1.25rem; }
.pab-lp-hero__sub { color: rgba(255,255,255,.9); font-size: var(--pab-body-xl); }

.pab-lp-form { background: #fff; border-radius: 16px; box-shadow: 0 30px 80px rgba(20,22,18,.35); padding: clamp(1.5rem, 3vw, 2rem); color: var(--pab-text); }
.pab-lp-form__head { margin-bottom: 1.25rem; }
.pab-lp-form__head h2 { font-size: 1.375rem; margin-bottom: .375rem; }
.pab-lp-form__head p { font-size: var(--pab-body-sm); }
.pab-lp-form .pab-form { gap: .875rem; }
.pab-lp-form .pab-form__row--2 { grid-template-columns: 1fr 1fr; gap: .875rem; }
@media (max-width: 1040px) {
	.pab-lp-hero__inner { grid-template-columns: 1fr; max-width: 620px; margin-inline: auto; }
	.pab-lp-hero__text { max-width: none; }
}

.pab-lp-specs__price { display: block; font-family: var(--pab-font-serif); font-size: 1.875rem; color: var(--pab-text); margin-bottom: 1.25rem; }
.pab-lp-specs .pab-specs__list { margin-bottom: 1.25rem; }

/* Photo slider (replaces the text column next to the specs card) */
.pab-lp-slider { position: relative; aspect-ratio: 800 / 312; border-radius: var(--pab-radius-lg); overflow: hidden; background: var(--pab-icon-bg); }
.pab-lp-slider__track { position: relative; width: 100%; height: 100%; cursor: grab; touch-action: pan-y; user-select: none; -webkit-user-select: none; }
.pab-lp-slider__track:active { cursor: grabbing; }
.pab-lp-slider__slide { display: none; width: 100%; height: 100%; }
.pab-lp-slider__slide.is-active { display: block; }
.pab-lp-slider__slide img, .pab-lp-slider__slide .pab-photo-ph { width: 100%; height: 100%; object-fit: cover; }
.pab-lp-slider__dots { position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); z-index: 1; display: flex; align-items: center; gap: 5px; }
.pab-lp-slider__dot { width: 14px; height: 14px; padding: 0; border: 0; background: transparent; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.pab-lp-slider__dot::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--pab-border); transition: background var(--pab-transition); }
.pab-lp-slider__dot.is-active::before { background: var(--pab-hero-dark); }
@media (max-width: 860px) { .pab-lp-slider { order: -1; } }

/* ---------- 404 ---------- */
.pab-404 { text-align: center; padding-block: clamp(4rem, 10vw, 7rem); }
.pab-404 .code { font-family: var(--pab-font-serif); font-size: clamp(4rem, 12vw, 7rem); color: var(--pab-green); line-height: 1; }
