/* New Paltz Express Laundry: a service-first, native CSS design system. */
@font-face {
  font-family: 'NPL DM Sans';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('fonts/713ca32c3c8b.woff2') format('woff2');
}
.site-2026 {
  --npl-navy:#142e52;
  --npl-gold:#efbc48;
  --npl-text:#253c55;
  --npl-muted:#52677c;
  --npl-pale:#eef4f8;
  --npl-line:#d7e2eb;
  --navy:var(--npl-navy);
  --navy-2:var(--npl-pale);
  --navy-3:#dce7f0;
  --paper:#fff;
  --cloud:var(--npl-pale);
  --slate:var(--npl-muted);
  --mist:var(--npl-line);
  --mist-2:#b7c9d9;
  --sky:var(--npl-navy);
  --sky-soft:var(--npl-pale);
  --gold:#805c07;
  --mono:'NPL DM Sans',Arial,sans-serif;
  --display:'NPL DM Sans',Arial,sans-serif;
  --body:'NPL DM Sans',Arial,sans-serif;
  --canvas:#fff;
  --surface:var(--npl-pale);
  --ink:var(--npl-navy);
  --ink-soft:var(--npl-text);
  --line:var(--npl-line);
  --blue:var(--npl-navy);
  --blue-2:#213f65;
  --button:var(--npl-gold);
  --button-ink:var(--npl-navy);
  --brand-gold:var(--npl-gold);
  --brand-gold-hover:#f5c760;
  --gutter:clamp(24px,4.5vw,64px);
  --section:80px;
  color:var(--npl-text);
  font-family:var(--body);
  font-size:18px;
  line-height:1.65;
  background:#fff;
  color-scheme:light;
}
.site-2026 .wrap {max-width:1320px}
body.site-2026 {font:400 18px/1.65 var(--body)}
.site-2026.luxury-site main>section {
  --canvas:#fff;--surface:var(--npl-pale);--ink:var(--npl-navy);--ink-soft:var(--npl-text);
  --line:var(--npl-line);--blue:var(--npl-navy);--blue-2:#213f65;
  --button:var(--npl-gold);--button-ink:var(--npl-navy);
}
.site-2026.luxury-site main>:is(.on-dark-sec,.contact-section,.schedule-section,.delivery-feature) {
  background:var(--npl-pale);color:var(--npl-navy);
}
.site-2026.luxury-site main>:is(.freshband,.student-callout,.neighborhood-section,.store-amenities,.how-section) {background:var(--npl-pale)}
.site-2026.luxury-site main>.service-introduction {background:var(--npl-pale);background-image:none}
.site-2026.luxury-site :is(.on-dark-sec,.contact-section,.schedule-section,.delivery-feature,.cta) :is(h1,h2,h3,.section-context) {color:var(--npl-navy)}
.site-2026.luxury-site :is(.on-dark-sec,.contact-section,.schedule-section,.delivery-feature,.cta) :is(p,li) {color:var(--npl-text)}
.site-2026 h1,.site-2026 h2,.site-2026 h3,.site-2026 h4 {
  font-family:var(--body);font-weight:750;color:var(--npl-navy);letter-spacing:-.04em;
}
.site-2026 h1 {font-size:clamp(42px,5vw,68px);line-height:1.06}
.site-2026 h2 {font-size:clamp(32px,3.4vw,46px);line-height:1.13;margin:0 0 22px}
.site-2026 h3 {font-size:25px;line-height:1.25;letter-spacing:-.025em}
.site-2026 p {color:var(--npl-text);font-size:18px;line-height:1.65}
.site-2026 strong {font-weight:700}
.site-2026 a {text-underline-offset:5px}
.site-2026 :focus-visible {outline:3px solid #3776b6;outline-offset:5px}
.site-2026 .btn {
  min-height:48px;padding:14px 24px;border-radius:8px;font:700 16px/1.25 var(--body);
  white-space:normal;text-align:center;box-shadow:none;transition:background-color .18s ease,transform .18s ease;
}
.site-2026 .btn.btn-primary {background:var(--npl-gold);border-color:var(--npl-gold);color:var(--npl-navy)}
.site-2026 .btn.btn-primary:hover {background:#f5c760;border-color:#f5c760;color:var(--npl-navy);transform:translateY(-1px)}
.site-2026 .btn:active {transform:scale(.98)}
.site-2026 .btn-ghost,.site-2026 .btn-on-dark {background:transparent;color:var(--npl-navy);border-color:#7890a7}
.site-2026 .btn-ghost:hover,.site-2026 .btn-on-dark:hover {background:var(--npl-pale);color:var(--npl-navy);border-color:var(--npl-navy)}
.site-2026 .more,.site-2026 .text-action {font-size:16px;font-weight:700;color:var(--npl-navy);gap:10px}
.site-2026 .section-context,.site-2026 .crumb {font:600 14px/1.5 var(--body);color:var(--npl-muted);letter-spacing:0;text-transform:none}
.site-2026 .sec-head {max-width:760px;margin-bottom:34px}
.site-2026 .sec-head h2 {font-size:clamp(32px,3.4vw,46px)}
.site-2026 .sec-head p {font-size:18px;max-width:55ch}
/* Essential information is visible from the first render, even before scripts run. */
.site-2026 [data-reveal],.site-2026 .reveal,.site-2026 .motion-child,
.site-2026 .reveal-ready .motion-child,.site-2026 .reveal-ready.is-visible .motion-child,
.site-2026 .hero-beat,.site-2026 .finder-inner,.site-2026 .luxury-hero-photo img {
  opacity:1!important;transform:none!important;animation:none!important;transition-delay:0ms!important;
}
/* Shared reusable compositions; existing page components inherit the same hierarchy. */
.site-2026 .npl-intro {max-width:780px;margin-bottom:36px}
.site-2026 .npl-intro h2 {margin-bottom:16px}
.site-2026 .npl-intro p {max-width:54ch;margin:0}
.site-2026 .npl-split {display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.site-2026 .npl-actions {display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px}
.site-2026 .npl-note {font-size:14px;line-height:1.65;color:var(--npl-muted)}
.site-2026 .npl-price {font-size:38px;line-height:1.2;letter-spacing:-.04em;font-weight:750;color:var(--npl-navy);margin:25px 0 8px}
.site-2026 .npl-price span {font-size:17px;font-weight:500;letter-spacing:0}
.site-2026 .npl-panel {padding:32px;background:var(--npl-pale);border:1px solid var(--npl-line);border-radius:16px}
.site-2026 .npl-panel p {font-size:17px}
.site-2026 .npl-panel-primary {background:var(--npl-navy);border-color:var(--npl-navy)}
.site-2026 .npl-panel-primary :is(h2,h3,p,strong,.npl-price,.text-action) {color:#fff}
.site-2026 .npl-panel-primary .npl-note {color:#d7e2ee}
.site-2026 .npl-panel-primary .btn-ghost {color:#fff;border-color:#b6c9db}
.site-2026 .npl-panel-primary .btn-ghost:hover {background:#213f65;color:#fff}
.site-2026 .npl-photo {margin:0;overflow:hidden;border-radius:16px}
.site-2026 .npl-photo img {display:block;width:100%;height:100%;object-fit:cover}
.site-2026 .npl-steps {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:36px 0 30px}
.site-2026 .npl-step {position:relative;padding-top:22px;border-top:2px solid #b9ccde}
.site-2026 .npl-step-number {font-size:35px;line-height:1;font-weight:750;letter-spacing:-.05em;color:#486d92}
.site-2026 .npl-step h3 {font-size:23px;margin:17px 0 10px}
.site-2026 .npl-step p {font-size:16px;margin:0;max-width:26ch}
.site-2026 main>.phero {background:var(--npl-pale);padding-block:62px}
.site-2026 .phero h1 {max-width:17ch;margin:20px 0 24px}
.site-2026 .phero h1 {font-size:clamp(42px,5vw,68px)}
.site-2026 .phero p {font-size:18px;max-width:58ch}
.site-2026 .phero .cta-booking-note,.site-2026 .phero .phero-note,.site-2026 .phero .phero-trust-line {font-size:14px;line-height:1.65}
.site-2026 .editorial-page-photo {border-radius:16px;overflow:hidden}
.site-2026 .phero>.wrap:has(.editorial-page-photo) {gap:48px;align-items:center}
.site-2026 .split {gap:56px}
.site-2026 :is(.pc,.wf-card,.way,.audience-card,.form-card,.loc-card,.card,.town) {
  border-radius:16px;border:1px solid var(--npl-line);background:#fff;box-shadow:none;
}
.site-2026 :is(.pc,.wf-card,.way,.audience-card,.card) {padding:28px}
.site-2026 .pc-num {font-family:var(--body);font-size:43px;font-weight:750;color:var(--npl-navy)}
.site-2026 :is(.pc-name,.wf-card h3,.way h3,.audience-card h3) {font-size:23px;font-weight:750;color:var(--npl-navy)}
.site-2026 :is(.pc-min,.way p,.audience-card p,.loc-card p,.wf-card p,.card p) {font-size:16px;line-height:1.65}
.site-2026 .pc.hl {border:2px solid #6f8dae;background:var(--npl-pale)}
.site-2026 .ptable {border-radius:16px;border:1px solid var(--npl-line);background:#fff;overflow:hidden}
.site-2026 .ptable h3 {font-size:23px;padding:24px;margin:0;background:var(--npl-pale)}
.site-2026 .ptable .row {font-size:16px;padding:13px 24px}
.site-2026 .ptable .amt {font-weight:700;color:var(--npl-navy)}
.site-2026 .feature-list li,.site-2026 .comm-points li {font-size:17px;color:var(--npl-text);line-height:1.65}
.site-2026 .trust .t b {font-size:23px;font-weight:750}
.site-2026 .trust .t span {font-size:16px;line-height:1.65}
.site-2026 .sched .day {border-radius:16px;padding:25px;background:var(--npl-pale)}
.site-2026 .day :is(p,small) {font-size:16px}
.site-2026 .day b {font-size:28px;font-family:var(--body)}
.site-2026 .form-card label {font-size:16px;color:var(--npl-navy);font-weight:650}
.site-2026 .form-card :is(input,select,textarea) {font-family:var(--body);font-size:16px;min-height:48px;border-color:#8499ae;border-radius:8px;color:var(--npl-navy);background:#fff}
.site-2026 .form-card :is(input,textarea)::placeholder {color:#5e7184;opacity:1}
.site-2026.luxury-site :is(.form-note,.form-help,.form-card [aria-live],.student-verify-panel p) {font-size:14px;line-height:1.7}
.site-2026.luxury-site .student-verify-panel input[type=file] {font-size:14px}
.site-2026.luxury-site .phero a[href^="tel:"] {font-size:14px}
.site-2026.luxury-site .step p {font-size:16px;line-height:1.65}
/* The contact card used to be dark; its original div labels carry literal white. */
.site-2026.luxury-site .loc-card :is(.k,.v,.v a,.hv,.hours-chip strong,.hours-chip em) {color:var(--npl-navy)}
.site-2026.luxury-site .loc-card :is(.hk,.hs,.contact-list span) {color:var(--npl-muted)}
.site-2026.luxury-site .loc-card .hv {font-size:19px;font-weight:750;line-height:1.4}
.site-2026.luxury-site .loc-card .hk {font-size:14px;font-weight:650}
.site-2026.luxury-site .loc-card .hs {font-size:14px;line-height:1.6}
.site-2026.luxury-site .loc-card .k {font-size:14px;font-weight:700}
.site-2026.luxury-site .loc-card .v {font-size:16px;line-height:1.65;overflow-wrap:anywhere}
.site-2026.luxury-site .loc-card .info-row {color:var(--npl-navy)}
.site-2026 .faq {gap:0 42px}
.site-2026 .faq summary {font:650 18px/1.45 var(--body);padding:23px 42px 23px 0;color:var(--npl-navy)}
.site-2026 .faq details {border-bottom:1px solid var(--npl-line)}
.site-2026 .faq details :is(p,div,.faq-answer-content) {font-size:16px;line-height:1.75;color:var(--npl-text)}
.site-2026 .faq summary::after {color:var(--npl-navy);font-size:24px}
/* Global framing stays on existing navigation/menu, privacy and sticky APIs. */
.site-2026 .annc {font-size:14px;padding:10px 24px;background:var(--npl-navy);color:#fff}
.site-2026 .annc a,.site-2026 .annc .code2 {color:#fff}
.site-2026 header.nav {background:#fff;border-color:var(--npl-line)}
.site-2026 .nav-inner {height:80px;gap:24px}
.site-2026.page-index header.nav .nav-inner,
.site-2026.page-index header.nav.is-scrolled .nav-inner,
.site-2026.page-index header.nav:not(.is-scrolled) .nav-inner {height:78px;transition:none}
.site-2026 .brand-copy strong {font-size:16px;color:var(--npl-navy)}
.site-2026 .brand-copy>span {font-size:12px;color:var(--npl-text)}
.site-2026 .nav-links {gap:24px}
.site-2026 .nav-links>a,.site-2026 .nav-more>summary {font-size:14px;font-weight:650;color:var(--npl-navy);padding-block:12px}
.site-2026 .nav-more-panel {border-radius:12px;box-shadow:0 15px 35px #142e5218}
.site-2026 .nav-more-panel a {font-size:15px;padding:12px}
.site-2026 .nav-cta .btn {font-size:14px;min-height:48px;padding:13px 20px;white-space:nowrap}
.site-2026 .menu-btn {min-width:44px;min-height:44px}
.site-2026 .menu-btn span {background:var(--npl-navy)}
.site-2026 .sticky-cta {background:#fff;border-color:var(--npl-line)}
.site-2026 .sticky-cta .btn {font-size:14px;min-height:48px}
.site-2026 footer {background:var(--npl-pale);border-top:1px solid var(--npl-line);color:var(--npl-navy)}
.site-2026 footer p {font-size:15px;line-height:1.7;color:var(--npl-text)}
.site-2026.luxury-site .foot-inner>div:first-child p {font-size:14px;line-height:1.7}
.site-2026 .foot-col h5 {font-family:var(--body);font-size:14px;font-weight:750;color:var(--npl-navy)}
.site-2026 .foot-col a,.site-2026 .footer-link-button {font-size:14px;line-height:1.8;padding-block:3px;color:var(--npl-text)}
.site-2026 .foot-bottom {font-size:12px;line-height:1.8;color:var(--npl-muted);border-color:var(--npl-line)}
.site-2026 main>.cta {background:var(--npl-pale);color:var(--npl-navy);padding-block:66px;text-align:left}
.site-2026 .cta h2 {color:var(--npl-navy);font-size:clamp(36px,4vw,54px);max-width:19ch}
.site-2026 .cta p {color:var(--npl-text);font-size:18px}
.site-2026 .cta .btn-ghost {color:var(--npl-navy);border-color:#7890a7}
.site-2026.luxury-site .cta :is(.btn-ghost,.btn-on-dark) {color:var(--npl-navy);border-color:#7890a7;background:transparent}
.site-2026.luxury-site .cta :is(.btn-ghost,.btn-on-dark):hover {color:var(--npl-navy);background:#e0eaf2}
.site-2026 .cta .cta-booking-note {font-size:14px}
/* Homepage: each section has a distinct job and composition. */
.site-2026.home-2026 main>.luxury-hero {padding-block:58px 62px;background:#fff;background-image:none}
.site-2026.home-2026 .luxury-hero-grid {grid-template-columns:1fr 1fr;gap:64px;align-items:center;min-height:0}
.site-2026.home-2026 .luxury-hero-copy {padding:0}
.site-2026.home-2026 .hero-location {font-size:14px;font-weight:650;color:var(--npl-muted);letter-spacing:0;text-transform:none;margin:0 0 22px}
.site-2026.home-2026 .luxury-hero h1 {font-size:clamp(58px,6vw,82px);line-height:1.04;letter-spacing:-.065em;margin:0 0 24px;font-weight:800}
.site-2026.home-2026 .hero-summary {font-size:19px;line-height:1.65;max-width:37ch;margin:0 0 23px}
.site-2026.home-2026 .hero-essentials {font-size:16px;line-height:1.6;margin:0;color:var(--npl-navy)}
.site-2026.home-2026 .hero-essentials strong {font-size:28px;letter-spacing:-.035em;margin-right:6px}
.site-2026.home-2026 .hero-fee {font-size:14px;line-height:1.6;margin:5px 0 0;color:var(--npl-muted)}
.site-2026.home-2026 .hero-actions {display:flex;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.site-2026.home-2026 .hero-actions .btn {font-size:16px;min-height:48px;padding:14px 24px;white-space:nowrap}
.site-2026.home-2026 .luxury-hero-photo {aspect-ratio:4/3;min-height:0;margin:0;border-radius:16px;overflow:hidden}
.site-2026.home-2026 .luxury-hero-photo::after {display:none}
.site-2026.home-2026 .luxury-hero-photo img {width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.site-2026.home-2026 main>.home-proof {background:var(--npl-pale);padding-block:24px;border-block:1px solid var(--npl-line)}
.site-2026.home-2026 .home-proof-grid {display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;align-items:center}
.site-2026.home-2026 .home-proof-item {display:flex;flex-direction:column;gap:4px}
.site-2026.home-2026 .home-proof-item strong {font-size:20px;color:var(--npl-navy);font-weight:750}
.site-2026.home-2026 .home-proof-item span {font-size:14px;color:var(--npl-muted)}
.site-2026.home-2026 .home-proof-item a {color:var(--npl-navy);text-decoration:none}
.site-2026.home-2026 .home-proof-item a:hover {text-decoration:underline}
.site-2026.home-2026 .home-proof-item .proof-star {color:#805c07;font-size:20px}
.site-2026.home-2026 main>.home-services {padding-block:80px}
.site-2026.home-2026 .home-service-grid {display:grid;grid-template-columns:1.13fr 1fr;gap:22px;align-items:stretch}
.site-2026.home-2026 .home-service-grid>.npl-panel {display:flex;align-items:flex-start;flex-direction:column}
.site-2026.home-2026 .home-service-grid h3 {font-size:32px;margin:0 0 14px}
.site-2026.home-2026 .home-service-grid .service-detail {font-size:14px;margin:18px 0 0;line-height:1.7}
.site-2026.home-2026 .home-service-grid .npl-actions {margin-top:auto;padding-top:24px}
.site-2026.home-2026 .service-short-label {font-size:14px;font-weight:700;margin:0 0 21px}
.site-2026.home-2026 .home-self-option {display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 0 0;margin-top:28px;border-top:1px solid var(--npl-line)}
.site-2026.home-2026 .home-self-option h3 {font-size:23px;margin:0 0 6px}
.site-2026.home-2026 .home-self-option p {font-size:16px;margin:0}
.site-2026.home-2026 .home-self-option .text-action {flex-shrink:0;min-height:44px;align-items:center}
.site-2026.home-2026 main>.home-how {background:var(--npl-pale);padding-block:72px}
.site-2026.home-2026 main>.home-visit {padding-block:84px}
.site-2026.home-2026 .home-visit .npl-photo {aspect-ratio:1.14}
.site-2026.home-2026 .home-visit .npl-photo img {object-position:center 45%}
.site-2026.home-2026 .home-visit h2 {font-size:clamp(36px,3.7vw,50px);max-width:16ch}
.site-2026.home-2026 .home-visit p {max-width:40ch}
.site-2026.home-2026 .visit-hours {display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0;padding-block:22px;border-block:1px solid var(--npl-line)}
.site-2026.home-2026 .visit-hours strong {font-size:25px;display:block;color:var(--npl-navy);letter-spacing:-.035em}
.site-2026.home-2026 .visit-hours span {font-size:14px;color:var(--npl-muted)}
.site-2026.home-2026 .visit-extras {display:flex;flex-wrap:wrap;gap:13px 25px;margin-top:25px}
.site-2026.home-2026 .visit-extras a {font-size:14px;font-weight:650;color:var(--npl-navy)}
.site-2026.home-2026 main>.reviews-widget {background:var(--npl-pale);padding-block:72px}
.site-2026 .reviews-heading h2 {font-size:clamp(32px,3.4vw,46px)}
.site-2026 .google-summary strong {font-family:var(--body);font-size:48px;font-weight:750;color:var(--npl-navy)}
.site-2026 .google-summary :is(.review-scale,a:last-child),.site-2026 .review-toolbar p {font-size:14px}
.site-2026 .google-source {font-size:15px;font-weight:650}
.site-2026 .review-card {border-radius:16px;border:1px solid var(--npl-line);background:#fff;padding:28px}
.site-2026 .review-card blockquote {font-size:17px;line-height:1.65}
.site-2026 .review-author strong {font-size:16px;font-weight:700}
.site-2026 .review-author time {font-size:13px}
.site-2026 .review-card .review-source-link,.site-2026 .review-card .review-expand {font-size:14px}
.site-2026 .review-controls button {border-radius:8px;min-height:44px;font-size:14px;color:var(--npl-navy)}
.site-2026 .review-bottom p {font-size:14px}
.site-2026 .review-bottom .text-action {font-size:15px}
.site-2026.home-2026 main>.home-savings {padding-block:78px}
.site-2026.home-2026 .home-offer-grid {display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:34px}
.site-2026.home-2026 .home-offer {padding-right:40px}
.site-2026.home-2026 .home-offer+.home-offer {padding-left:40px;padding-right:0;border-left:1px solid var(--npl-line)}
.site-2026.home-2026 .home-offer h3 {font-size:56px;margin:0 0 10px;font-weight:800;letter-spacing:-.055em}
.site-2026.home-2026 .home-offer h3 span {font-size:25px;letter-spacing:-.02em}
.site-2026.home-2026 .home-offer p {font-size:17px;max-width:38ch;margin:0 0 20px}
.site-2026.home-2026 .home-student {display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:32px;margin-top:42px;padding:28px 32px;border-radius:16px;background:var(--npl-pale)}
.site-2026.home-2026 .home-student h3 {font-size:25px;margin:0 0 9px}
.site-2026.home-2026 .home-student p {font-size:16px;max-width:58ch;margin:0}
.site-2026.home-2026 .home-student-actions {justify-self:auto;gap:13px;flex-shrink:0}
.site-2026.home-2026 .home-student-actions .text-action {font-size:14px}
.site-2026.home-2026 main>.faq-section {background:#fff;padding-block:0 76px}
.site-2026.home-2026 .home-faq {max-width:1320px}
.site-2026.home-2026 .home-faq>.text-action {font-size:16px;margin-top:26px}
.site-2026.home-2026 .home-final-grid {display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px}
.site-2026.home-2026 .home-final-grid h2 {margin-bottom:15px}
.site-2026.home-2026 .home-final-grid p {margin:0}
.site-2026.home-2026 .home-cta-actions {display:flex;flex-direction:column;gap:12px;align-items:stretch}
@media(max-width:1180px) and (min-width:1081px) {
  .site-2026 .nav-inner {gap:16px}
  .site-2026 .nav-links {gap:17px}
  .site-2026 .brand-copy strong {font-size:15px}
}
@media(max-width:1080px) {
  .site-2026 .nav-links>a,.site-2026 .nav-more>summary {font-size:17px;padding:13px 0}
  .site-2026 .nav-more-panel a {font-size:16px}
  .site-2026 .npl-split,.site-2026 .split {gap:36px}
  .site-2026.home-2026 .luxury-hero-grid {gap:36px}
  .site-2026.home-2026 .luxury-hero h1 {font-size:64px}
  .site-2026.home-2026 .hero-summary {font-size:18px}
  .site-2026 .npl-steps {gap:20px}
}
@media(max-width:760px) {
  .site-2026 {--gutter:24px;--section:52px;font-size:16px}
  body.site-2026 {font-size:16px}
  .site-2026 h1 {font-size:42px}
  .site-2026 h2,.site-2026 .sec-head h2 {font-size:34px}
  .site-2026 h3 {font-size:24px}
  .site-2026 p,.site-2026 .sec-head p,.site-2026 .npl-intro p {font-size:16px;line-height:1.7}
  .site-2026 .btn {font-size:15px;padding:14px 19px;min-height:48px}
  .site-2026 .npl-split,.site-2026 .split {grid-template-columns:1fr;gap:32px}
  .site-2026 .npl-panel {padding:26px}
  .site-2026 .npl-panel p {font-size:16px}
  .site-2026 .npl-panel .npl-note {font-size:14px}
  .site-2026 .npl-intro {margin-bottom:26px}
  .site-2026 .npl-steps {grid-template-columns:1fr 1fr;gap:30px 22px}
  .site-2026 .npl-step h3 {font-size:20px}
  .site-2026 .npl-step p {font-size:15px;line-height:1.65}
  .site-2026 .npl-actions {gap:12px;margin-top:22px}
  .site-2026 main>.phero {padding-block:38px}
  .site-2026 .phero h1 {max-width:19ch;font-size:42px;margin-top:15px}
  .site-2026 .phero p {font-size:16px}
  .site-2026 .phero .cta-booking-note,.site-2026 .phero .phero-trust-line,.site-2026 .phero .phero-note {font-size:14px}
  .site-2026 :is(.pc,.wf-card,.way,.audience-card,.card) {padding:24px}
  .site-2026 .ptable h3 {font-size:21px;padding:20px}
  .site-2026 .ptable .row {font-size:15px;padding:12px 20px}
  .site-2026 .faq {grid-template-columns:1fr}
  .site-2026 .faq summary {font-size:17px;padding-block:21px}
  .site-2026 .annc {font-size:12px;padding:9px 19px;line-height:1.5}
  .site-2026 .nav-inner {height:74px;gap:12px}
  .site-2026.page-index header.nav .nav-inner,
  .site-2026.page-index header.nav.is-scrolled .nav-inner,
  .site-2026.page-index header.nav:not(.is-scrolled) .nav-inner {height:74px}
  .site-2026 .brand {gap:8px}
  .site-2026 .brand img {width:42px;height:42px}
  .site-2026 .brand-copy strong {font-size:12px;letter-spacing:-.015em}
  .site-2026 .brand-copy>span {font-size:10px}
  .site-2026 .nav-cta .btn {font-size:12px;padding:11px 13px;min-height:44px}
  .site-2026 .nav-more-panel {box-shadow:none}
  .site-2026 .foot-inner {gap:28px}
  .site-2026 .foot-col a,.site-2026 .footer-link-button {padding-block:5px}
  .site-2026 main>.cta {padding-block:48px}
  .site-2026 .cta h2 {font-size:36px}
  .site-2026 .cta p {font-size:16px}
  .site-2026.home-2026 main>.luxury-hero {padding-block:38px 38px}
  .site-2026.home-2026 .luxury-hero-grid {grid-template-columns:1fr;gap:30px}
  .site-2026.home-2026 .hero-location {font-size:14px;margin-bottom:18px}
  .site-2026.home-2026 .luxury-hero h1 {font-size:60px;line-height:1.03;letter-spacing:-.06em;margin-bottom:21px}
  .site-2026.home-2026 .hero-summary {font-size:17px;max-width:37ch;margin-bottom:20px}
  .site-2026.home-2026 .hero-essentials {font-size:15px}
  .site-2026.home-2026 .hero-essentials strong {font-size:25px}
  .site-2026.home-2026 .hero-actions {gap:10px;margin-top:22px}
  .site-2026.home-2026 .hero-actions .btn {font-size:15px;min-height:48px;padding:14px 12px}
  .site-2026.home-2026 .hero-fee {font-size:14px}
  .site-2026.home-2026 .luxury-hero-photo {aspect-ratio:4/3}
  .site-2026.home-2026 main>.home-proof {padding-block:24px}
  .site-2026.home-2026 .home-proof-grid {grid-template-columns:1fr 1fr;gap:22px 20px}
  .site-2026.home-2026 .home-proof-item:first-child {grid-column:1/-1;padding-bottom:18px;border-bottom:1px solid var(--npl-line)}
  .site-2026.home-2026 .home-proof-item strong {font-size:18px}
  .site-2026.home-2026 main>.home-services {padding-block:50px}
  .site-2026.home-2026 .home-service-grid {grid-template-columns:1fr;gap:18px}
  .site-2026.home-2026 .home-service-grid h3 {font-size:28px}
  .site-2026.home-2026 .service-short-label {margin-bottom:16px}
  .site-2026.home-2026 .home-self-option {flex-direction:column;align-items:flex-start;gap:13px;margin-top:24px;padding-top:22px}
  .site-2026.home-2026 .home-self-option h3 {font-size:22px}
  .site-2026.home-2026 main>.home-how {padding-block:49px}
  .site-2026.home-2026 main>.home-visit {padding-block:52px}
  .site-2026.home-2026 .home-visit .npl-photo {aspect-ratio:1.3}
  .site-2026.home-2026 .home-visit h2 {font-size:36px}
  .site-2026.home-2026 .visit-hours {gap:12px;margin-block:23px}
  .site-2026.home-2026 .visit-hours strong {font-size:24px}
  .site-2026.home-2026 main>.reviews-widget {padding-block:48px}
  .site-2026 .reviews-heading h2 {font-size:34px}
  .site-2026 .reviews-heading {gap:20px}
  .site-2026 .google-summary strong {font-size:40px}
  .site-2026 .review-toolbar p {font-size:14px;max-width:20ch}
  .site-2026 .review-card {padding:25px;min-height:320px}
  .site-2026 .review-card blockquote {font-size:16px}
  .site-2026 .review-bottom p {font-size:14px}
  .site-2026 .review-bottom .text-action {font-size:14px;white-space:normal}
  .site-2026.home-2026 main>.home-savings {padding-block:48px}
  .site-2026.home-2026 .home-offer-grid {grid-template-columns:1fr;gap:26px;margin-top:26px}
  .site-2026.home-2026 .home-offer,.site-2026.home-2026 .home-offer+.home-offer {padding:0;border:0}
  .site-2026.home-2026 .home-offer+.home-offer {padding-top:25px;border-top:1px solid var(--npl-line)}
  .site-2026.home-2026 .home-offer h3 {font-size:48px}
  .site-2026.home-2026 .home-offer p {font-size:16px}
  .site-2026.home-2026 .home-student {flex-direction:column;align-items:flex-start;gap:22px;margin-top:32px;padding:26px}
  .site-2026.home-2026 .home-student h3 {font-size:25px}
  .site-2026.home-2026 .home-student p {font-size:16px}
  .site-2026.home-2026 .home-student-actions {align-items:flex-start}
  .site-2026.home-2026 main>.faq-section {padding-block:0 48px}
  .site-2026.home-2026 .home-final-grid {grid-template-columns:1fr;gap:25px}
  .site-2026.home-2026 .home-cta-actions {flex-direction:row;flex-wrap:wrap;justify-content:flex-start}
}
@media(max-width:360px) {
  .site-2026 {--gutter:20px}
  .site-2026 .brand-copy {display:none}
  .site-2026.home-2026 .luxury-hero h1 {font-size:52px}
  .site-2026.home-2026 .hero-actions {align-items:stretch;flex-direction:column}
  .site-2026 .npl-steps {grid-template-columns:1fr}
  .site-2026 .npl-step p {max-width:none}
  .site-2026.home-2026 .visit-hours {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce) {
  .site-2026 * {scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
