/* Hallmark · shape: coastal treatment menu · genre: editorial · theme: brand · redesign: full
 * display: Cormorant Garamond · body: Manrope · hero: Stage · nav: three-part booking bar · footer: colophon
 * signature: the treatment film beside a concise first visit offer · posture: committed · axes: light/roman-serif/cool · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E3 S4 R4 V4 · weakest: E, legacy layers retained for existing service wiring; verify computed layout */
/* Hallmark · waive 49b · real treatment and facial guide names cannot shorten, two lines at most · Newport keeps the established treatment names and descriptive guide links readable on narrow phones */
/* Hallmark · dismissed 25 · Newport section introductions are short ledes of one or two sentences and sit above 28ch */
/* Hallmark · answered F15 · Newport shares one capped shell; the hero, compact menu rows and evidence galleries use their own gaps to fit their content */
/* Hallmark · answered F19 · retained brand styles use five existing weights across labels, controls and headings; no new font family added */
@import './tokens.css';
@import './base.css' layer(hallmark-base);
:root { --space-grid:32px; --space-section-half:48px; --space-hero-foot:56px; --space-control:20px; --hm-paper:#fbfcfa; --hm-mist:#eaf1f2; --hm-ink:#173f49; --hm-deep:#12313a; --hm-muted:#52676c; --hm-gold:#d9c69f; --hm-rule:#b4c5c7; --hm-gold-ink:#6c5428; --hm-clear:transparent; --hm-focus-light:#fbfcfa; --hm-shadow:0 8px 32px #12313a20; --hm-display:'Cormorant Garamond',Georgia,serif; --hm-body:'Manrope',Arial,sans-serif; }
html,body { overflow-x:clip; }
body.newport-home { background:var(--hm-paper); color:var(--hm-ink); font-size:16px; line-height:1.6; }
.newport-home .shell { width:min(calc(100% - 80px),1312px); max-width:1312px; margin-inline:auto; }
.newport-home :is(h1,h2,h3) { min-width:0; overflow-wrap:break-word; font-family:var(--hm-display); font-weight:500; font-style:normal; letter-spacing:-.025em; text-wrap:balance; color:inherit; }
.newport-home :is(h2) { font-size:clamp(2.25rem,3.7vw,3.5rem); line-height:1.08; }
.newport-home :is(h3) { font-size:1.75rem; line-height:1.2; }
.newport-home :is(p,small,span,a,button,summary,figcaption) { text-transform:none; }
.newport-home :is(.button,.service-link,.offer-label,.rail-instruction,.outcome-caption,.kicker,.eyebrow,.visit-label,.proof-copy,.proof-intro p,.hero-video-toggle) { letter-spacing:0; }
.newport-home :is(a,button,summary,input,select,video,[tabindex]):focus-visible { outline:3px solid var(--hm-ink); outline-offset:4px; box-shadow:0 0 0 7px var(--hm-paper); transition:none; }
.newport-home :is(button,a,summary):active { transform:translateY(1px); }
.newport-home :is(button:disabled,[aria-disabled=true]) { cursor:not-allowed; color:var(--hm-muted); background:var(--hm-mist); opacity:.7; }
.newport-home :is(.button,.service-link) { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:var(--space-sm) var(--space-lg); border:1px solid var(--hm-ink); border-radius:4px; font-family:var(--hm-body); font-size:.875rem; font-weight:700; line-height:1.4; white-space:nowrap; box-shadow:none; letter-spacing:0; animation:none; }
.newport-home :is(.button-primary,.service-link,.button-light) { background:var(--hm-gold); color:var(--hm-deep); border-color:var(--hm-gold); }
.newport-home :is(.button-primary,.service-link,.button-light):hover { background:var(--hm-paper); color:var(--hm-ink); border-color:var(--hm-ink); transform:none; }
.newport-home .button-ghost { background:var(--hm-clear); border-color:var(--hm-rule); color:inherit; }
.newport-home .button::after,.newport-home .service-link::after,.newport-home .hero-note::before { display:none; }
.newport-home .announcement { background:var(--hm-deep); color:var(--hm-paper); }
.newport-home .announcement .shell { min-height:36px; font-size:.8125rem; }
.newport-home .site-header { background:var(--hm-paper); color:var(--hm-ink); border-bottom:1px solid var(--hm-rule); box-shadow:none; }
.newport-home .site-header::before,.newport-home .site-header::after { display:none; }
.newport-home .nav-row { min-height:80px; gap:var(--space-lg); }
.newport-home .wordmark { color:var(--hm-ink); }
.newport-home .wordmark-main { color:var(--hm-ink); font-size:1.375rem; }
.newport-home .wordmark-sub { color:var(--hm-muted); font-size:.75rem; }
.newport-home .site-header .desktop-nav a { color:var(--hm-ink); font-size:.8125rem; }
.newport-home .site-header .wordmark::before { animation:none; }
.newport-home .site-header .header-actions .button { min-height:44px; }
.newport-home .hero { padding:var(--space-section-half) 0 var(--space-hero-foot); min-height:0; background:var(--hm-deep); color:var(--hm-paper); }
.newport-home .hero::before,.newport-home .hero::after { display:none; }
.newport-home .hm-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:var(--space-2xl); align-items:center; min-height:540px; }
.newport-home .hm-copy { display:block; padding:0; color:var(--hm-paper); }
.newport-home .hm-heading { margin:0; }
.newport-home .hero #hero-title { max-width:12ch; font-size:clamp(3.5rem,5.3vw,5.25rem); line-height:1; margin:0 0 var(--space-lg); color:var(--hm-paper); }
.newport-home .hero-intro-details { display:block; width:100%; }
.newport-home .hero-lead { max-width:32ch; color:var(--hm-paper); font-size:1.125rem; line-height:1.6; margin:0 0 var(--space-lg); }
.newport-home .hero-offer { display:flex; width:auto; flex-wrap:wrap; justify-content:flex-start; align-items:baseline; gap:var(--space-xs); padding:0; margin:0 0 var(--space-lg); border:0; background:none; color:var(--hm-paper); }
.newport-home .hero-offer>span { color:var(--hm-paper); font-size:.875rem; }
.newport-home .hero-offer>span:first-child { display:none; }
.newport-home .hero-offer strong { color:var(--hm-paper); font-size:2rem; font-family:var(--hm-body); font-weight:700; font-variant-numeric:tabular-nums; }
.newport-home .hero-offer del { color:var(--hm-paper); font-size:1rem; margin-left:var(--space-xs); }
.newport-home .hero-actions { display:flex; align-items:center; gap:var(--space-md); flex-wrap:wrap; }
.newport-home .hero .button-primary { min-width:160px; background:var(--hm-gold); border-color:var(--hm-gold); color:var(--hm-deep); }
.newport-home .hero .button-ghost { color:var(--hm-paper); padding:var(--space-sm) 0; border:0; border-bottom:1px solid var(--hm-paper); }
.newport-home .hero-note { margin:var(--space-md) 0 0; color:var(--hm-paper); font-size:.8125rem; }
.newport-home .hm-help-link { display:inline-block; margin-top:var(--space-sm); color:var(--hm-paper); font-size:.875rem; text-decoration:underline; text-underline-offset:4px; }
.newport-home .hero-visual { order:0; height:540px; min-height:0; margin:0; border:0; border-radius:4px 64px 4px 4px; box-shadow:none; background-color:var(--hm-ink); }
.newport-home .hero-visual::after { background:none; }
.newport-home .hero-video-toggle { top:16px; right:16px; min-height:44px; padding:var(--space-sm) var(--space-md); color:var(--hm-paper); background:var(--hm-deep); border:1px solid var(--hm-paper); border-radius:4px; font-size:.875rem; }
.newport-home .hero-badge { inset:auto 0 0; padding:var(--space-md) var(--space-lg); background:var(--hm-deep); border:0; border-radius:0; }
.newport-home .hero-badge strong { color:var(--hm-paper); font-size:1.375rem; }
.newport-home .hero-badge-details { margin-top:var(--space-xs); }
.newport-home .hero-badge-address,.newport-home .hero-badge-phone { color:var(--hm-paper); font-size:.75rem; text-align:left; letter-spacing:0; }
.newport-home .hm-about { padding-block:var(--space-md); border-bottom:1px solid var(--hm-rule); }
.newport-home details>summary { cursor:pointer; min-height:44px; padding-block:var(--space-sm); font-family:var(--hm-body); font-weight:700; font-size:.9375rem; }
.newport-home details>summary:hover { text-decoration:underline; text-underline-offset:4px; }
.newport-home .hm-about p { max-width:70ch; margin:var(--space-md) 0; }
.newport-home .proof-bridge { padding-block:var(--space-section-half); background:var(--hm-paper); border:0; }
.newport-home .proof-intro { display:block; margin-bottom:var(--space-lg); }
.newport-home .proof-intro h2 { font-size:2.25rem; }
.newport-home .proof-intro p { font-size:.875rem; margin-top:var(--space-sm); color:var(--hm-muted); }
.newport-home .proof-offer { display:none; }
.newport-home .proof-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr); gap:var(--space-grid); }
.newport-home .proof-card { padding:0; border:0; background:none; box-shadow:none; }
.newport-home .proof-result img { width:112px; height:112px; object-fit:contain; }
.newport-home .proof-award img { width:64px; height:88px; object-fit:contain; }
.newport-home .proof-copy :is(strong,span,cite) { font-size:.8125rem; line-height:1.6; letter-spacing:0; color:var(--hm-muted); }
.newport-home .proof-copy blockquote { font-family:var(--hm-display); font-size:1.5rem; line-height:1.3; color:var(--hm-ink); }
.newport-home .proof-stars { color:var(--hm-gold-ink); }
.newport-home main>.section { padding-block:var(--space-3xl); background:var(--hm-paper); color:var(--hm-ink); }
.newport-home main>.section::before,.newport-home main>.section::after,.newport-home .coastal-swell { display:none; }
.newport-home .section-head { display:flex; align-items:end; justify-content:space-between; gap:var(--space-grid); margin-bottom:var(--space-grid); }
.newport-home .section-head h2 { max-width:18ch; }
.newport-home .section-head p { max-width:36ch; color:var(--hm-muted); font-size:1rem; }
.newport-home .treatment-preview-note { color:var(--hm-muted); font-size:.875rem; line-height:1.6; margin:0 0 var(--space-lg); }
.newport-home .service-grid.specials-grid,.newport-home .service-grid.regular-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:0; }
.newport-home .service-card,.newport-home .specials-grid .service-card:first-child,.newport-home .specials-grid .service-card:nth-child(5),.newport-home .regular-grid .service-card:last-child { display:grid; grid-template-columns:minmax(0,192px) minmax(0,1fr); grid-column:auto; width:100%; gap:var(--space-grid); padding:var(--space-grid) 0; border:0; border-top:1px solid var(--hm-rule); border-radius:0; background:none; box-shadow:none; }
.newport-home .service-photo,.newport-home .specials-grid .service-card:first-child .service-photo { height:auto; min-height:0; margin:0; aspect-ratio:4/3; align-self:start; border-radius:4px; }
.newport-home .service-photo img { height:100%; object-fit:cover; transform:none; transition:none; }
.newport-home .outcome-caption { position:static; color:var(--hm-muted); background:none; font-size:.75rem; padding:var(--space-xs) 0; }
.newport-home .service-photo { overflow:visible; margin-bottom:var(--space-xl); }
.newport-home .service-copy,.newport-home .specials-grid .service-card:first-child .service-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:var(--space-sm) var(--space-lg); padding:0; }
.newport-home .service-title-row { grid-column:1; display:flex; gap:var(--space-lg); align-items:baseline; justify-content:space-between; }
.newport-home .service-copy h3 { font-size:1.875rem; margin:0; }
.newport-home .offer-price { display:flex; align-items:baseline; gap:var(--space-sm); margin:0; }
.newport-home .offer-label { color:var(--hm-muted); font-size:.75rem; white-space:nowrap; }
.newport-home .offer-price-line { display:flex; gap:var(--space-xs); align-items:baseline; }
.newport-home .service-price { font-size:1.25rem; color:var(--hm-ink); font-variant-numeric:tabular-nums; font-weight:700; }
.newport-home .regular-price { color:var(--hm-muted); font-size:.875rem; }
.newport-home .service-fit,.newport-home .service-copy>p { grid-column:1; margin:0; font-size:.9375rem; color:var(--hm-muted); }
.newport-home .service-fit strong { display:none; }
.newport-home .hm-treatment-details { grid-column:1; }
.newport-home .hm-treatment-details>summary { font-size:.875rem; font-weight:500; }
.newport-home .service-facts { margin:var(--space-md) 0; }
.newport-home .service-details-link { padding:var(--space-sm) 0; border:0; background:none; color:var(--hm-ink); }
.newport-home .service-link { grid-column:2; grid-row:1 / span 3; align-self:center; margin:0; }
.newport-home .booking-action-arrow { display:none; }
.newport-home .service-availability { border:0; border-radius:0; background:var(--hm-mist); padding:var(--space-md); }
.newport-home .decision-strip { padding:0; background:var(--hm-mist); color:var(--hm-ink); }
.newport-home .hm-guide-disclosure { padding:var(--space-lg) 0; }
.newport-home .hm-guide-disclosure>summary { font-family:var(--hm-display); font-size:2.25rem; font-weight:500; }
.newport-home .decision-shell { width:100%; padding:var(--space-xl) 0; }
.newport-home .decision-copy :is(h2,p,a) { color:var(--hm-ink); }
.newport-home .guide-trace { display:none; }
.newport-home .guide-progress-track span { transition:transform 200ms ease; }
.newport-home .guide-panel { box-shadow:none; border:1px solid var(--hm-rule); }
.newport-home .concern-shortcuts { padding:var(--space-lg) 0; }
.newport-home .concern-shortcuts .shell { width:100%; }
.newport-home .concern-shortcuts h2 { font-size:2rem; }
.newport-home .concern-links a { background:none; border:0; border-bottom:1px solid var(--hm-rule); border-radius:0; }
.newport-home main>.treatments { padding-top:var(--space-2xl); }
.newport-home main>.evidence { background:var(--hm-mist); }
.newport-home .evidence-main-head { margin-bottom:var(--space-section-half); }
.newport-home .evidence-main-head p,.newport-home .evidence-subhead p { color:var(--hm-muted); font-size:1rem; }
.newport-home .evidence-subhead h3 { font-size:2rem; }
.newport-home .results-integrity,.newport-home .rail-instruction { color:var(--hm-muted); font-size:.8125rem; letter-spacing:0; }
.newport-home .result-card,.newport-home .result-frame,.newport-home .result-media { border:0; box-shadow:none; background:none; }
.newport-home .result-media { height:360px; }
.newport-home .result-media img { object-fit:contain; }
.newport-home .result-card figcaption { color:var(--hm-ink); padding:var(--space-md) 0; }
.newport-home .recognition-band { background:none; border-block:1px solid var(--hm-rule); border-radius:0; padding:var(--space-grid) 0; margin:var(--space-section-half) 0; }
.newport-home .recognition-band h3 { font-size:1.75rem; }
.newport-home .recognition-band .button { white-space:normal; }
.newport-home .review-card { background:var(--hm-paper); color:var(--hm-ink); border:0; border-radius:4px; padding:var(--space-grid); box-shadow:none; }
.newport-home .review-card :is(p,cite,span) { color:var(--hm-ink); }
.newport-home .review-stars { color:var(--hm-gold-ink); }
.newport-home .hm-credentials { width:100%; margin-top:var(--space-grid); border-top:1px solid var(--hm-rule); }
.newport-home .hm-credentials .shell { width:100%; }
.newport-home .trust-strip h2 { font-size:1.75rem; }
.newport-home .hm-credentials .trust-strip { padding:var(--space-lg) 0; }
.newport-home .faq-layout { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:var(--space-2xl); }
.newport-home .faq-list summary { padding-block:var(--space-control); font-size:1rem; }
.newport-home main>.cherry-payments { background:var(--hm-mist); }
.newport-home .cherry-intro { display:grid; grid-template-columns:minmax(0,240px) minmax(0,1fr); align-items:start; gap:var(--space-2xl); }
.newport-home .cherry-promo { margin:0; width:100%; border-radius:4px; box-shadow:none; }
.newport-home .cherry-promo img { width:100%; height:auto; }
.newport-home .cherry-offer { order:0; }
.newport-home .hm-payment-label { font-size:1rem; margin-bottom:var(--space-md); }
.newport-home .cherry-offer h2 { font-size:3rem; margin-bottom:var(--space-control); }
.newport-home .cherry-approval { display:block; padding:0; border:0; border-radius:0; background:none; color:var(--hm-ink); font-size:1rem; margin:0 0 var(--space-md); }
.newport-home .cherry-offer .cherry-offer-lead { color:var(--hm-ink); font-size:1rem; max-width:65ch; }
.newport-home .cherry-offer .cherry-apply { width:auto; min-height:48px; display:inline-flex; padding:var(--space-sm) var(--space-lg); margin-top:var(--space-control); font-size:.9375rem; animation:none; }
.newport-home .cherry-apply::after,.newport-home .cherry-apply-arrow { display:none; }
.newport-home .cherry-offer .cherry-note { color:var(--hm-muted); font-size:.875rem; max-width:70ch; }
.newport-home .hm-payment-details { margin-top:var(--space-grid); border-top:1px solid var(--hm-rule); padding-top:var(--space-md); }
.newport-home .hm-payment-details>summary { font-size:1rem; }
.newport-home .cherry-widget-shell { margin-top:var(--space-grid); background:var(--hm-paper); border:0; box-shadow:none; }
.newport-home .final-cta { padding:var(--space-3xl) 0; background:var(--hm-deep); color:var(--hm-paper); }
.newport-home .final-cta::before,.newport-home .final-cta::after { display:none; }
.newport-home .visit-copy :is(h2,p),.newport-home .visit-panel :is(span,address,a,dt,dd) { color:var(--hm-paper); }
.newport-home .visit-panel { background:none; border:0; border-left:1px solid var(--hm-rule); border-radius:0; }
.newport-home .visit-label { font-size:.875rem; letter-spacing:0; }
.newport-home .site-footer { background:var(--hm-deep); color:var(--hm-paper); padding:var(--space-section-half) 0; }
.newport-home .site-footer::before,.newport-home .site-footer::after { display:none; }
.newport-home .site-footer a { color:var(--hm-paper); }
.newport-home .mobile-book { border-radius:4px; background:var(--hm-gold); color:var(--hm-deep); box-shadow:var(--hm-shadow); animation:none; }
.newport-home .mobile-book :is(span) { color:var(--hm-deep); letter-spacing:0; }
.newport-home .newport-privacy-banner { max-width:720px; inset-inline:auto 16px; bottom:16px; grid-template-columns:minmax(0,1fr) auto; gap:var(--space-md); padding:var(--space-md) var(--space-control); border-radius:8px; border-color:var(--hm-rule); background:var(--hm-paper); color:var(--hm-ink); box-shadow:var(--hm-shadow); }
.newport-home .newport-privacy-copy h2 { font-family:var(--hm-body); color:var(--hm-ink); font-size:.875rem; font-weight:700; letter-spacing:0; margin-bottom:var(--space-2xs); }
.newport-home .newport-privacy-copy p { color:var(--hm-ink); font-size:.8125rem; line-height:1.55; }
.newport-home .newport-privacy-copy a { color:var(--hm-ink); }
.newport-home .newport-privacy-actions { display:grid; gap:var(--space-xs); }
.newport-home .newport-privacy-actions button { min-height:44px; padding:var(--space-xs) var(--space-md); border-radius:4px; letter-spacing:0; font-size:.8125rem; background:var(--hm-ink); color:var(--hm-paper); }
.newport-home .newport-privacy-actions button+button { color:var(--hm-ink); background:var(--hm-paper); }
@media (max-width:1080px) {
 .newport-home .shell { width:calc(100% - 48px); }
 .newport-home .hm-layout { gap:var(--space-grid); min-height:480px; }
 .newport-home .hero-visual { height:480px; }
 .newport-home .service-copy { grid-template-columns:minmax(0,1fr); }
 .newport-home .service-link { grid-column:1; grid-row:auto; justify-self:start; }
 .newport-home .service-title-row { flex-wrap:wrap; gap:var(--space-sm); }
 .newport-home .site-header .mobile-menu summary { min-height:48px; padding:var(--space-xs) var(--space-md); color:var(--hm-ink); background:var(--hm-paper); border:1px solid var(--hm-rule); border-radius:4px; }
 .newport-home .site-header .mobile-panel { color:var(--hm-ink); background:var(--hm-paper); border:1px solid var(--hm-rule); border-radius:4px; }
 .newport-home .site-header .mobile-panel a:not(.button) { color:var(--hm-ink); }
}
@media (max-width:760px) {
 .newport-home .shell { width:calc(100% - 32px); }
 .newport-home .nav-row { min-height:68px; gap:var(--space-md); }
 .newport-home .wordmark-main { font-size:1.125rem; }
 .newport-home .wordmark-sub { font-size:.75rem; }
 .newport-home .hero { padding:var(--space-grid) 0; }
 .newport-home .hm-layout { display:flex; flex-direction:column; align-items:stretch; min-height:0; gap:var(--space-grid); }
 .newport-home .hero #hero-title { max-width:15ch; font-size:clamp(2.5rem,9vw,3.5rem); margin-bottom:var(--space-md); }
 .newport-home .hero-lead { font-size:1rem; margin-bottom:var(--space-md); }
 .newport-home .hero-offer { margin-bottom:var(--space-md); }
 .newport-home .hero-offer strong { font-size:1.625rem; }
 .newport-home .hero-actions { gap:var(--space-md); flex-wrap:nowrap; }
 .newport-home .hero .button-primary { flex:0 0 auto; min-width:132px; }
 .newport-home .hero .button-ghost { flex:0 1 auto; font-size:.8125rem; }
 .newport-home .hero-note { margin-top:var(--space-sm); }
 .newport-home .hm-help-link { margin-top:var(--space-xs); }
 .newport-home .hero-visual { height:360px; margin:0; border-radius:4px 48px 4px 4px; }
 .newport-home .hero-badge { padding:var(--space-sm) var(--space-md); }
 .newport-home .proof-grid { grid-template-columns:minmax(0,1fr); gap:var(--space-lg); }
 .newport-home .proof-card { border-bottom:1px solid var(--hm-rule); padding-bottom:var(--space-lg); }
 .newport-home .proof-intro h2 { font-size:2rem; }
 .newport-home main>.section { padding-block:var(--space-2xl); }
 .newport-home .section-head { display:block; margin-bottom:var(--space-lg); }
 .newport-home .section-head p { margin-top:var(--space-md); }
 .newport-home .service-card,.newport-home .specials-grid .service-card:first-child,.newport-home .specials-grid .service-card:nth-child(5),.newport-home .regular-grid .service-card:last-child { grid-template-columns:minmax(0,1fr); gap:var(--space-lg); padding:var(--space-grid) 0; }
 .newport-home .service-photo,.newport-home .specials-grid .service-card:first-child .service-photo { display:none; }
 .newport-home .service-copy,.newport-home .specials-grid .service-card:first-child .service-copy { grid-template-columns:minmax(0,1fr); gap:var(--space-sm); }
 .newport-home .service-title-row { display:flex; justify-content:space-between; align-items:start; }
 .newport-home .service-copy h3 { font-size:1.75rem; max-width:18ch; }
 .newport-home .offer-price { gap:var(--space-xs); }
 .newport-home .service-link { width:100%; }
 .newport-home .hm-guide-disclosure>summary { font-size:1.875rem; }
 .newport-home .decision-shell { display:block; padding:var(--space-lg) 0; }
 .newport-home .guide-panel { margin-top:var(--space-lg); }
 .newport-home .concern-shortcuts .shell { width:100%; }
 .newport-home .evidence-subhead { display:block; }
 .newport-home .result-media { height:300px; }
 .newport-home .recognition-band { grid-template-columns:64px minmax(0,1fr); gap:var(--space-md); }
 .newport-home .recognition-band .button { grid-column:1 / -1; }
 .newport-home .faq-layout { grid-template-columns:minmax(0,1fr); gap:var(--space-grid); }
 .newport-home .cherry-intro { grid-template-columns:minmax(0,1fr); gap:var(--space-grid); }
 .newport-home .cherry-promo { max-width:192px; order:2; }
 .newport-home .cherry-offer h2 { font-size:2.5rem; }
 .newport-home .hm-payment-details { margin-top:var(--space-lg); }
 .newport-home .final-cta { padding-block:var(--space-2xl); }
 .newport-home .visit-panel { border:0; border-top:1px solid var(--hm-rule); padding:var(--space-lg) 0 0; }
 .newport-home .newport-privacy-banner { inset-inline:8px; bottom:8px; width:auto; padding:var(--space-sm) var(--space-md); gap:var(--space-xs); grid-template-columns:minmax(0,1fr); max-height:calc(100dvh - 16px); }
 .newport-home .newport-privacy-actions { display:flex; gap:var(--space-xs); }
 .newport-home .newport-privacy-actions button { flex:1; font-size:.8125rem; padding:var(--space-xs); white-space:nowrap; }
}
@media (prefers-reduced-motion:reduce) {
 .newport-home *, .newport-home *::before,.newport-home *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
/* Reset the earlier film and heading layout without changing media wiring. */
.newport-home .hm-copy { width:100%; margin:0; }
.newport-home .hero-visual { width:100%; }
.newport-home .hero-visual video { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; object-fit:cover; background:var(--hm-deep); }
.newport-home .hero-badge { position:absolute; color:var(--hm-paper); }
.newport-home .hero-visual { color:var(--hm-paper); }
.newport-home .outcome-caption span { color:var(--hm-muted); background:var(--hm-paper); }
.newport-home .regular-price { font-variant-numeric:tabular-nums; }
.newport-home .recognition-band .button { white-space:nowrap; }
.newport-home .mobile-menu:not([open]) .mobile-panel { display:none; }
.newport-home .newport-privacy-copy h2 { text-transform:none; }
@media(max-width:760px) { .newport-home .hero-visual { height:400px; } }
/* The service menu shares one row structure at every desktop width. */
.newport-home .service-grid.specials-grid .service-card { display:grid; grid-template-columns:minmax(0,192px) minmax(0,1fr); gap:var(--space-grid); width:100%; grid-column:auto; }
.newport-home .service-grid.specials-grid .service-card .service-photo { width:100%; height:144px; min-height:0; aspect-ratio:4/3; align-self:start; }
.newport-home .service-grid.specials-grid .service-card .service-photo img { width:100%; height:100%; object-fit:cover; }
.newport-home .service-grid.specials-grid .service-card .service-copy { width:100%; padding:0; }
.newport-home .service-grid.specials-grid .service-card h3 { min-height:0; }
.newport-home .decision-strip::before,.newport-home .decision-strip::after { display:none; }
.newport-home .review-card:first-child { background:var(--hm-paper); color:var(--hm-ink); }
.newport-home .review-card:first-child :is(p,cite,span) { color:var(--hm-ink); }
.newport-home .hero :is(a,button):focus-visible,.newport-home .final-cta :is(a,button):focus-visible { outline-color:var(--hm-paper); box-shadow:0 0 0 7px var(--hm-ink); }
.newport-home .hero .button,.newport-home .hero-video-toggle,.newport-home .recognition-band .button { min-height:48px; height:auto; padding-block:var(--space-sm); }
.newport-home .recognition-band { grid-template-columns:80px minmax(0,1fr) auto; }
.newport-home .proof-card .proof-copy { min-width:0; }
.newport-home .proof-card .proof-copy a { display:inline-block; }
@media(max-width:1080px) { .newport-home .proof-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:760px) {
 .newport-home .service-grid.specials-grid .service-card { grid-template-columns:minmax(0,1fr); gap:var(--space-lg); }
 .newport-home .service-grid.specials-grid .service-card .service-photo { display:none; }
 .newport-home .recognition-band { grid-template-columns:64px minmax(0,1fr); }
 .newport-home .recognition-band .button { grid-column:1 / -1; }
}
.newport-home .service-grid .service-card .outcome-caption span { color:var(--hm-muted); background:var(--hm-paper); font-size:.75rem; letter-spacing:0; }
.newport-home .hero-visual video { color:var(--hm-paper); }
.newport-home .proof-copy a { white-space:nowrap; }
.newport-home .hero-badge-phone { white-space:nowrap; }
.newport-home .hero #hero-title { max-width:16ch; font-size:clamp(3.5rem,5vw,5rem); }
.newport-home .review-grid .review-card:first-child :is(.review-text,.review-stars,.review-source,cite,cite span) { color:var(--hm-ink); }
.newport-home .guide-progress,.newport-home .guide-progress span { color:var(--hm-ink); }
.newport-home[data-hallmark] :is(.button.button-primary,.service-link,.button-light) { min-height:48px; padding:var(--space-sm) var(--space-lg); border:1px solid var(--hm-gold); border-radius:4px; box-shadow:none; font-size:.875rem; font-weight:700; letter-spacing:0; color:var(--hm-deep); background:var(--hm-gold); }
.newport-home .recognition-band .button { max-width:none; }
@media(max-width:760px) { .newport-home .hero #hero-title { max-width:16ch; font-size:clamp(2.25rem,9vw,3.5rem); } }
.newport-home .hm-about { padding-block:var(--space-xs); }
.newport-home .proof-bridge { padding-top:var(--space-grid); }
.newport-home .service-grid.specials-grid .service-card,.newport-home .service-grid.regular-grid .service-card { padding-top:var(--space-section-half); }
.newport-home .footer-phone { white-space:nowrap; }
