/* The disclosure overlays the top edge without adding a header row. */
header .nav{height:auto;min-height:68px;padding-block:0;align-items:center}
header .nav .button{align-self:center}
header .preference-bar{position:absolute;top:0;left:50%;transform:translateX(-50%);width:max-content;background:transparent}
header .preference-shell{height:auto;min-height:0;padding:0;justify-content:center}
header .display-options>summary,
html[data-access="true"] header .display-options>summary{min-height:20px;padding:0 10px;font-size:11px;line-height:18px}
header .preference-panel,
html[data-access="true"] header .preference-panel{right:auto;left:50%;transform:translateX(-50%);top:calc(100% + 3px)}
.palette-samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}
.palette-sample{display:flex;flex-direction:column;gap:4px;align-items:center;padding:6px 2px;border-radius:4px;border:1px solid var(--line);background:var(--field);color:var(--ink);cursor:pointer;font-size:11px}
.palette-sample span{width:80%;height:9px;border-radius:9px;background:linear-gradient(90deg,var(--swatch) 65%,var(--tint) 65%)}
.palette-sample[aria-pressed="true"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:bold}
[data-palette="orange"]{--swatch:#b74420;--tint:#ff8a3d}
[data-palette="blue"]{--swatch:#1766a6;--tint:#8fcaff}
[data-palette="teal"]{--swatch:#076c68;--tint:#77d9cc}
[data-palette="purple"]{--swatch:#70449b;--tint:#ceb0f6}
[data-palette="rose"]{--swatch:#a33461;--tint:#ffacc8}
[data-palette="red"]{--swatch:#a6212d;--tint:#ff6258}
.social-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;font-weight:700}
.insurance-image{object-position:center 20%}
.price-card{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:12px}
.price-card h3,.price-card p{margin:0}
.price-card>span{align-self:start}
@supports not (grid-template-rows:subgrid){.price-card{grid-row:auto;grid-template-rows:minmax(2.8em,auto) auto 1fr}}
#gallery-lightbox{width:min(920px,calc(100% - 28px));max-height:94dvh;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}
#gallery-lightbox::backdrop{background:#101612dc}
.lightbox-panel{position:relative}
.lightbox-image{width:100%;height:min(67dvh,570px);object-fit:contain;display:block;background:#151a19}
.lightbox-controls{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px}
.lightbox-controls p{text-align:center;margin:0;font-weight:bold}
.lightbox-controls button,.lightbox-close{width:44px;height:44px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);cursor:pointer;font-size:24px}
.lightbox-close{position:absolute;right:12px;top:12px}
@media(max-width:800px){header .nav{min-height:64px}.price-card{grid-row:auto;grid-template-rows:auto auto auto}.preference-panel{width:min(350px,calc(100vw - 32px))}}

.preference-panel .palette-label{flex-basis:100%;margin:0;font-size:13px;font-weight:700}
.preference-panel button:disabled{opacity:.48;filter:grayscale(1);cursor:not-allowed}
html[data-access="true"] .preference-panel .palette-label{color:var(--muted);font-size:16px}

.birthday-message{width:min(480px,calc(100% - 32px));max-height:calc(100% - 32px);padding:clamp(22px,5vw,36px);border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:10px;background:var(--paper);color:var(--ink);box-shadow:0 18px 65px #0004}
.birthday-message::backdrop{background:#101612b8}
.birthday-message h2{margin:16px 0;color:var(--accent);font-size:clamp(28px,6vw,40px)}
.birthday-message p{margin:0 0 14px;font-size:17px;line-height:1.55}
.birthday-message form{margin-top:22px}
html[data-access="true"] .birthday-message p{font-size:19px}

.birthday-photo{display:block;width:100%;height:auto;max-height:42vh;object-fit:contain;border-radius:6px;margin:0 0 16px}
