.plans-page main [hidden]{display:none!important}
.pl-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-6);align-items:start}
.pl-hero-grid>*{min-width:0}
.pl-hero-copy h1{font-size:clamp(2.5rem,3.5vw,3.2rem);line-height:var(--lh-tight)}
.pl-hero-summary{margin-top:var(--space-3);font-size:var(--text-lg);font-weight:600}
.pl-hero-description{margin-top:var(--space-2);color:#5F5B50;max-width:38rem;overflow-wrap:break-word}
.pl-hero-copy>.c-actions{margin-top:var(--space-3)}
.pl-hero-note{margin-top:var(--space-3);font-size:var(--text-sm);color:#5F5B50}
.pl-product{border-radius:var(--radius-lg);overflow:hidden;background:var(--sand);color:#2A2218}
.pl-product>img{width:100%;height:clamp(15rem,24vw,21rem);object-fit:cover;object-position:center}
.pl-product>figcaption{display:grid;gap:var(--field-gap);padding:var(--space-3);background:var(--sand);color:#2A2218}
.pl-product>figcaption>span{font-size:var(--text-sm);color:#65594A}
.pl-section{padding-block:var(--space-7)}
.pl-section h2{font-size:var(--text-xl);line-height:var(--lh-title)}
.pl-heading{max-width:52rem;margin-bottom:var(--space-4)}
.pl-heading>p{margin-top:var(--space-2);color:#5F5B50}
.pl-period-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3)}
.pl-periods{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}
.pl-periods>.pl-period{background:var(--stone);color:#1C1A15}
.pl-periods>.pl-period:hover{background:var(--sand);color:#2A2218}
.pl-periods>.pl-period[aria-pressed="true"]{background:var(--primary);color:#FFFFFF}
.pl-periods>.pl-period[aria-pressed="true"]:hover{background:var(--primary-deep);color:#FFFFFF}
.pl-period-status{font-size:var(--text-sm);color:#5F5B50}
.pl-plan-grid{align-items:stretch}
.pl-plan-grid>.c-price-card{align-items:stretch}
.pl-plan-grid .c-kicker{margin-bottom:var(--space-2);line-height:1}
.pl-plan-grid .c-price-specs dt{font-size:var(--text-xs);min-width:0;overflow-wrap:break-word;hyphens:auto}
.pl-plan-grid .c-price-specs dd{font-size:var(--text-sm);overflow-wrap:break-word}
.pl-price-unit{font-family:var(--f-body);font-size:var(--text-base);font-weight:400}
.pl-card-note{font-size:var(--text-sm);color:#5E594C}
.pl-subheading{margin-top:var(--space-5);scroll-margin-top:calc(var(--header-height) + var(--space-3))}
.pl-table-spec{display:block;margin-top:var(--field-gap);font-weight:400;font-size:var(--text-xs);color:#5E594C}
.pl-price-table td{font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.pl-table-note{margin-top:var(--space-3);color:#5F5B50;font-size:var(--text-sm)}
.pl-night{background:var(--night);color:#F6F4EE;--muted:#A7B3B7;--line:rgba(246,244,238,.14)}
.pl-night .pl-heading>p{color:#A7B3B7}
.pl-spec-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-5);align-items:start}
.pl-spec-layout>*{min-width:0}
.pl-spec-layout>.c-spec-sheet{background:var(--stone);color:#1C1A15;--muted:#5E594C;--line:rgba(15,20,22,.12)}
.pl-spec-layout>.c-spec-sheet h3{margin-bottom:var(--space-2);color:#1C1A15}
.pl-spec-layout>.c-spec-sheet dt{min-width:0;color:#5E594C;overflow-wrap:break-word}
.pl-spec-layout>.c-spec-sheet dd{min-width:0;color:#1C1A15}
.pl-spec-copy{display:grid;gap:var(--space-2)}
.pl-spec-copy>p{color:#A7B3B7}
.pl-region-notes{margin-top:var(--space-4);align-items:stretch}
.pl-region-notes>.c-card,.pl-advice-grid>.c-card,.pl-payment-grid>.c-card{display:flex;flex-direction:column;gap:var(--space-2);height:auto;min-width:0}
.pl-region-notes,.pl-advice-grid,.pl-payment-grid{align-items:start}
.pl-stone-band{background:var(--stone);color:#1C1A15;--muted:#5E594C;--line:rgba(15,20,22,.12)}
.pl-stone-band .pl-heading>p,.pl-stone-band .pl-table-note{color:#5E594C}
.pl-addon-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.pl-addon-grid>.pl-addon-card{background:var(--paper);color:#0F1416;--muted:#5F5B50;--line:rgba(15,20,22,.12)}
.pl-addon-grid>.pl-addon-card>.c-price-tiles{margin-top:auto}
.pl-addon-card .c-price-tiles>div{background:var(--sand);color:#2A2218}
.pl-addon-card .c-price-tiles dt{color:#65594A}
.pl-addon-card .c-price-tiles dd{color:#2A2218;font-variant-numeric:tabular-nums}
.pl-advice-grid{align-items:start}
.pl-checklist{margin-top:var(--space-5)}
.pl-check-row{display:grid;grid-template-columns:2.5rem minmax(7.5rem,11rem) minmax(0,1fr);gap:var(--space-3);align-items:start;padding-block:var(--space-3);border-top:1px solid var(--line)}
.pl-check-row>*{min-width:0;overflow-wrap:break-word}
.pl-check-row>p{color:#5F5B50}
.pl-check-row>span{color:#2C6E7F}
.pl-check-row>h3{font-size:var(--text-base)}
.pl-payment-grid>.pl-payment-card{background:var(--night-card);color:#F6F4EE;--muted:#A7B3B7;--line:rgba(246,244,238,.14)}
.pl-payment-card>p{color:#A7B3B7}
.pl-final{padding-bottom:var(--space-close)}
.pl-closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:var(--space-5);align-items:center;padding:var(--space-6);border-radius:var(--radius-lg);background:var(--night);color:#F6F4EE;--muted:#A7B3B7;--line:rgba(246,244,238,.14)}
.pl-closing>*{min-width:0}
.pl-closing-copy{text-align:left}
.pl-closing-copy>h2{color:#F6F4EE}
.pl-closing-copy>p{margin-top:var(--space-2);color:#A7B3B7}
.pl-closing-actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2)}
.pl-closing-actions>.c-btn-secondary{background:transparent;color:#F6F4EE;box-shadow:inset 0 0 0 1px color-mix(in srgb,currentColor 45%,transparent)}
.pl-closing-actions>.c-btn-secondary:hover{background:var(--night-card);color:#F6F4EE}
@media(max-width:64rem){
.pl-hero-grid{grid-template-columns:minmax(0,1fr)}
.pl-product>img{height:clamp(16rem,45vw,23rem)}
.pl-spec-layout{grid-template-columns:minmax(0,1fr)}
.pl-closing{grid-template-columns:minmax(0,1fr)}
.pl-closing-actions{align-items:flex-start}
}
@media(max-width:42rem){
.pl-hero-grid{gap:var(--space-4)}
.pl-hero-copy h1{font-size:var(--text-display)}
.pl-product>img{height:16rem}
.pl-period-row{align-items:flex-start}
.pl-periods{gap:var(--space-1)}
.pl-periods>.pl-period{padding-inline:var(--space-2)}
.pl-plan-grid .c-price-specs>div{padding:var(--space-1)}
.pl-addon-grid{grid-template-columns:minmax(0,1fr)}
.pl-check-row{grid-template-columns:2.25rem minmax(0,1fr)}
.pl-check-row>:nth-child(3){grid-column:2}
.pl-closing{padding:var(--space-3)}
.pl-closing-actions{align-items:stretch}
}
