[data-page] .footer-refined{padding-block:26px 32px;gap:22px;align-items:center}
[data-page] .footer-actions{gap:10px}
[data-page] .hero h1 .headline-line{animation:none}
@media(max-width:760px){
 [data-page=home] .hero{background-color:#191b1d;background-image:linear-gradient(180deg,#101214bb 0%,#101214bb 45%,#10121466 62%,#10121400 78%,#10121433 100%),url('assets/approved-styled-mobile.webp');background-size:cover;background-position:center;background-repeat:no-repeat}
 [data-page=home] .hero:before,[data-page=home] .hero:after{content:none}
 [data-page=home] .hero-copy{background:none}
 [data-page=home] .hero-explanation{margin-top:26px;text-align:center;animation:none;text-shadow:0 1px 3px #0009}
 [data-page=home] .hero-actions{margin-top:12px}
 [data-page=home] .hero .approved-scene{background:none}
 [data-page=home] .approved-scene picture{opacity:0}
 [data-page=home] .approved-scene:after{content:none}
 [data-page] .footer-refined{padding-block:25px max(72px,env(safe-area-inset-bottom));gap:18px;text-align:center}
 [data-page] .footer-links{align-items:center;gap:7px}
 [data-page] .footer-actions{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px}
 [data-page] .footer-brand p{margin-top:8px}
}

/* Confirmed opening hours */
[data-page] #hours-row{grid-column:1/-1;padding-block:18px;min-height:0;text-align:center}
[data-page] #hours-row dt{justify-content:center;margin-bottom:8px}
[data-page] #contact-hours{white-space:pre-line;font-size:clamp(1rem,2.3vw,1.125rem);line-height:1.9;font-variant-numeric:tabular-nums}
/* Move the mobile title group lower while keeping the hero height. */
@media(max-width:760px){[data-page=home] .hero-copy{padding-top:132px;margin-bottom:-136px}}
@media(max-width:350px){[data-page=home] .hero-copy{padding-top:126px}}
/* One complete first screen on phones; catalogs start after scrolling. */
@media(max-width:760px){
 [data-page=home] .hero{min-height:100vh;min-height:100svh}
 [data-page=home] .hero-copy{padding-top:152px;margin-bottom:-156px}
}
@media(max-width:350px){[data-page=home] .hero-copy{padding-top:146px}}
/* Approved gold experience emblem, compact on mobile. */
[data-page=home] .experience-seal-approved{display:block;width:210px;height:auto;min-height:0;border:0;background:none;box-shadow:none}
[data-page=home] .experience-seal-approved:before,[data-page=home] .experience-seal-approved:after{display:none}
[data-page=home] .experience-seal-approved img{display:block;width:100%;height:auto}
@media(max-width:760px){[data-page=home] .experience-seal-approved{width:170px}}

/* Keep the heading separator only in the desktop line. */
[data-page=home] #about-heading .about-heading-separator{color:inherit}
@media(max-width:760px){[data-page=home] #about-heading .about-heading-separator{display:none}}

/* Plain centered section headings, without side ornaments. */
[data-page=home] :is(.catalog-entry-heading,.services-heading,.about-story,.contact-copy)>.eyebrow::before,[data-page=home] :is(.catalog-entry-heading,.services-heading,.about-story,.contact-copy)>.eyebrow::after{content:none;display:none}

/* Approved desktop contact composition; mobile keeps its existing layout. */
.contact-store-photo{display:none}
@media(min-width:761px){
 [data-page] .contact{align-items:stretch;padding-block:42px;gap:54px}
 [data-page] .contact-copy{padding-top:12px}
 .contact-store-photo{display:block;position:relative;overflow:hidden;margin:26px 0 0;width:100%;height:320px;border-radius:14px;background:#111416;box-shadow:0 16px 38px #0003}
 .contact-store-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}
 .contact-store-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#11141699,transparent 30%,transparent 80%,#11141633);pointer-events:none}
 [data-page] .contact-details{display:grid;grid-template-rows:minmax(112px,1fr) minmax(112px,1fr) minmax(140px,1.2fr) auto;gap:0;background:linear-gradient(145deg,#202426e8,#15191beb);border:1px solid #dfbd8040;border-radius:16px;padding:6px 26px;box-shadow:0 18px 50px #0002;align-self:stretch}
 [data-page] .contact-details>div,[data-page=home] .contact-details>.contact-shop-example{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:19px 12px;min-height:0;border:0;border-radius:0;background:none;box-shadow:none;text-align:center}
 [data-page] .contact-details>div+div,[data-page=home] .contact-details>.contact-shop-example{border-top:1px solid #dfbd8024}
 [data-page=home] .contact-shop-example>dt,[data-page=home] .contact-shop-example>dd:not(.shop-exterior){align-self:center}
 [data-page] .contact-details dt{display:flex;align-items:center;justify-content:center;gap:9px;font-size:18px;font-weight:500;line-height:1.6;color:var(--gold);margin:0}
 [data-page] .contact-details dt svg{position:static;transform:none;width:20px;height:20px;padding:0;border:0;border-radius:0;background:none;stroke-width:1.4}
 [data-page] .contact-details dd{margin:0;text-align:center;width:100%;font-size:24px;line-height:1.6;color:#f1f0eb}
 [data-page] #contact-phone{font-size:31px;font-weight:600;letter-spacing:.4px}
 [data-page] #contact-email{font-size:clamp(20px,2vw,26px);font-weight:500}
 [data-page] .contact-details #contact-address{font-size:25px;font-weight:500;align-self:center}
 [data-page] .contact-details .map-link{font-size:16px;text-decoration:none;border:0;padding:0;margin-top:0;display:inline-block;color:var(--gold)}
 [data-page] .contact-details .shop-exterior{display:none}
 [data-page] .contact-details #hours-row{padding:22px 12px 24px;text-align:center;gap:14px}
 [data-page] #hours-row dt{margin:0;font-size:20px;font-weight:600}
 [data-page] #contact-hours{font-size:24px;line-height:1.6;font-weight:600}
 [data-page] #contact-hours .contact-hours-day{font-size:20px;font-weight:500}
 [data-page] #contact-hours .contact-hours-day:not(:first-child){display:inline-block;margin-top:12px}
}
@media(min-width:761px) and (max-width:1000px){
 [data-page] .contact{gap:28px}
 [data-page] .contact-details{padding-inline:12px}
 [data-page] #contact-hours{font-size:21px}
 [data-page] .contact-details #contact-address{font-size:22px}
}

/* Center the approved service-card typography on desktop and phones. */
[data-page=home] .service-photo-card summary .service-card-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;min-height:148px;padding:16px 15px 20px}
[data-page=home] .service-photo-card .service-card-title{min-height:0;font-size:24px;font-weight:700;line-height:1.4;margin:0;text-align:center;max-width:100%;text-wrap:balance}
[data-page=home] .service-photo-card .service-card-subtitle{min-height:0;font-size:17px;font-weight:500;line-height:1.6;text-align:center;max-width:100%;text-wrap:balance}
[data-page=home] .service-item>p{text-align:center;line-height:1.7}
@media(max-width:760px){
 [data-page=home] .service-photo-card summary .service-card-copy{min-height:144px;padding:15px 10px 17px;gap:8px}
 [data-page=home] .service-photo-card .service-card-title{font-size:20px;line-height:1.4}
 [data-page=home] .service-photo-card .service-card-subtitle{font-size:15px;line-height:1.6}
}

/* Hide the booklet separator only in the closed mobile card. */
@media(max-width:760px){[data-page=home] .service-photo-card:not([open]) .booklets-summary-separator{display:none}}

#install-app{font:inherit;color:inherit;background:none;border:0;padding:10px 0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#install-app:hover{color:var(--gold)}
#install-app:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
#install-help{width:min(460px,calc(100% - 32px));padding:26px;color:#f1f0eb;background:#171c1f;border:1px solid #dfbd8070;border-radius:14px;text-align:center}
#install-help::backdrop{background:#000b}
#install-help h2{font-size:24px;color:var(--gold);line-height:1.5}
#install-help p{font-size:18px;line-height:1.8;margin-block:18px}
#install-help button{font:inherit;background:var(--gold);color:#171c1f;border:0;border-radius:6px;min-height:44px;padding:10px 26px}
