/* Top Town: "service van livery". Navy + signal red on white, condensed lettering, chamfered corners, slanted stripes.
   Loaded after main.css and sections.css; keeps their grids and breakpoints and restyles every surface. */
:root{
  --lv-red:#B11522;--lv-red-dk:#8C0F1A;--lv-red-lt:#FF6B75;--lv-navy:#02022A;--lv-navy-2:#101046;
  --lv-chamfer:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);
  --lv-chamfer-sm:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%);
  --lv-stripes:repeating-linear-gradient(115deg,var(--lv-red) 0 5px,transparent 5px 10px);
  --fw-hard:6px 6px 0 var(--lv-red);
  --fw-r:2px;--fw-r-sm:2px;--fw-r-lg:4px;
}
body.fw{font-size:1.0625rem;color:#14143A}
.fw h1,.fw h2,.fw h3,.fw h4{font-family:Archivo,"Arial Narrow",Arial,sans-serif;font-stretch:82%;font-weight:800;letter-spacing:-.005em;line-height:1.04}
.fw .fw-hero__title,.fw .fw-h1,.fw .fw-h2,.fw .fw-index__t,.fw .fw-cta h2,.fw .fw-ctaband h2,.fw .fw-pagehero h1{font-stretch:72%;font-weight:800;text-transform:uppercase;letter-spacing:.004em;line-height:.98}
.fw .fw-hero__title{font-size:clamp(2.7rem,1.3rem + 4.6vw,5.2rem)}
.fw .fw-h1{font-size:clamp(2.5rem,1.4rem + 3.6vw,4.4rem)}.fw .fw-h2{font-size:clamp(2.1rem,1.3rem + 2.6vw,3.5rem)}
.fw-mark,.fw-gt{background:none;color:var(--lv-red);padding:0;margin:0}
.fw-prose h2,.fw-prose-sec h2{font-stretch:78%;text-transform:none;letter-spacing:0;position:relative;padding-top:18px}
.fw-prose h2::before,.fw-prose-sec h2::before{content:"";position:absolute;left:0;top:0;width:44px;height:8px;background:var(--lv-stripes)}
.fw-prose-sec h2:first-child{margin-top:0}
.fw-prose a,.fw-prose-sec a{color:var(--lv-red);text-underline-offset:3px;text-decoration-thickness:2px}
.fw-prose blockquote{border-left:6px solid var(--lv-red);background:var(--fw-cream)}
.fw .fw-lead{color:#40426A}
.fw-eyebrow,.fw-label{font:800 .76rem Archivo,sans-serif;font-stretch:90%;letter-spacing:.18em;color:var(--lv-red);gap:.7rem}
.fw-eyebrow::before,.fw-label::before{width:24px;height:11px;border:0;background:var(--lv-stripes);transform:none}
.fw-label--light{color:var(--lv-red-lt)}.fw-label--light::before{background:repeating-linear-gradient(115deg,var(--lv-red-lt) 0 5px,transparent 5px 10px);border:0}

/* ---------- buttons ---------- */
.fw-btn{height:54px;border-radius:0;border:0;padding:0 1.7rem;font:800 .95rem Archivo,sans-serif;font-stretch:90%;letter-spacing:.09em;text-transform:uppercase;box-shadow:none;clip-path:var(--lv-chamfer);transition:background .15s,color .15s,transform .15s}
.fw-btn--sm{height:46px;padding:0 1.25rem;font-size:.85rem}
.fw-btn--cta{background:var(--lv-red);color:#fff!important;box-shadow:none}.fw-btn--cta:hover{background:var(--lv-navy);transform:none;box-shadow:none}
.fw-btn--primary{background:var(--lv-navy);color:#fff!important;box-shadow:none}.fw-btn--primary:hover{background:var(--lv-red);transform:none;box-shadow:none}
.fw-btn--ghost{background:#fff;color:var(--lv-navy)!important;box-shadow:inset 0 0 0 2px var(--lv-navy);clip-path:none}.fw-btn--ghost:hover{background:var(--lv-navy);color:#fff!important}
.fw-btn--ghost-light{background:transparent;color:#fff!important;box-shadow:inset 0 0 0 2px #fff;clip-path:none}.fw-btn--ghost-light:hover{background:#fff;color:var(--lv-navy)!important}
.fw .fw-cta .fw-btn--cta,.fw .fw-trust .fw-btn--cta,.fw .fw-footer .fw-btn--cta,.fw .fw-postcta__card .fw-btn--cta,.fw .fw-ctaband .fw-btn--primary{background:var(--lv-red);color:#fff!important}
.fw .fw-ctaband .fw-btn--primary{background:#fff;color:var(--lv-navy)!important}.fw .fw-ctaband .fw-btn--primary:hover{background:var(--lv-navy);color:#fff!important}
.fw :focus-visible{outline:3px solid var(--lv-red);outline-offset:3px;border-radius:0}

/* ---------- forms ---------- */
.fw-form input:not([type=checkbox]),.fw-form textarea,.fw-form select{border:2px solid #C9CADB;border-radius:0;background:#fff}
.fw-form input:focus,.fw-form textarea:focus,.fw-form select:focus{outline:0;border-color:var(--lv-navy);box-shadow:0 0 0 3px rgb(177 21 34/.25)}
.fw-form button[type=submit]{border:0;border-radius:0;background:var(--lv-red);clip-path:var(--lv-chamfer);box-shadow:none;text-transform:uppercase;letter-spacing:.09em;font-family:Archivo,sans-serif;font-stretch:90%}
.fw-notice{background:#EAF6EE;border-color:#146C43;border-radius:0}

/* ---------- top bar, header ---------- */
.fw-topbar{background:var(--lv-navy);color:#C7C8E0;font-size:.8rem;letter-spacing:.02em}
.fw-topbar__phone{font:800 .9rem Archivo,sans-serif;font-stretch:90%;letter-spacing:.06em}
.fw-header{border-bottom:4px solid var(--lv-red);background:#fff}
.fw-header.is-scrolled{box-shadow:0 10px 24px -16px rgb(2 2 42/.5)}
.fw-nav .fw-menu a{font:700 .84rem Archivo,sans-serif;font-stretch:92%;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px}
.fw-nav .fw-menu>li>a::after{height:4px;background:var(--lv-red);bottom:-3px}
.fw-sub{border:0;border-top:4px solid var(--lv-red);border-radius:0;box-shadow:0 22px 40px -18px rgb(2 2 42/.5);padding:6px}
.fw-sub a{border-radius:0;font-weight:600;text-transform:none;letter-spacing:0;font-size:.95rem}.fw-sub a:hover{background:var(--fw-cream);color:var(--lv-red)}
.fw-phone{font:800 1.1rem Archivo,sans-serif;font-stretch:88%;letter-spacing:.02em}.fw-phone .fw-i{color:var(--lv-red)}
.fw-burger,.fw-mnav__x{border-radius:0;border:2px solid var(--lv-navy)}
.fw-mnav__panel{border-left:6px solid var(--lv-red)}
.fw-mmenu a{font:800 1.3rem Archivo,sans-serif;font-stretch:82%;text-transform:uppercase;letter-spacing:.02em}
.fw .fw-logo__img{height:66px}
.fw-logo--tile{background:#fff;border-radius:0;clip-path:var(--lv-chamfer-sm)}

/* ---------- hero ---------- */
.fw-hero{background:#fff;overflow:hidden;padding-block:clamp(40px,5.5vw,84px) clamp(70px,8vw,120px)}
.fw-hero::before{content:"";position:absolute;top:-2px;bottom:-2px;right:-140px;width:calc(47% + 140px);background:var(--lv-navy);transform:skewX(-9deg)}
.fw-hero::after{content:"";position:absolute;top:-2px;bottom:-2px;right:calc(47% - 6px);width:24px;background:var(--lv-red);transform:skewX(-9deg)}
.fw-hero .fw-wrap{position:relative;z-index:2}
@media(min-width:901px){.fw-hero__grid{grid-template-columns:1.08fr .92fr;gap:clamp(30px,4vw,64px)}}
.fw-hero__title{margin-top:20px;color:var(--lv-navy)}
.fw-hero .fw-lead{color:#3B3D66;font-size:clamp(1.08rem,1rem + .3vw,1.24rem)}
.fw-ticket{margin-top:32px;border:0;border-top:5px solid var(--lv-red);border-radius:0;background:#fff;box-shadow:0 26px 50px -26px rgb(2 2 42/.55),0 0 0 1px #E1E2EE}
.fw-ticket::before,.fw-ticket::after{display:none}
.fw-ticket__top{border-bottom:1px solid #E1E2EE;font:800 .7rem Archivo,sans-serif;letter-spacing:.16em;color:var(--lv-navy)}.fw-ticket__top span:last-child{color:var(--lv-red)}
.fw-field{border-radius:0;background:var(--fw-cream);border-left:3px solid var(--lv-navy)}
.fw-field label{color:#5A5C7E;font-family:Archivo,sans-serif;letter-spacing:.12em}
.fw-checks{color:#3B3D66}.fw-checks li::before{width:11px;height:11px;background:var(--lv-red);transform:rotate(45deg)}
.fw-hero__visual{padding-top:6px;min-height:540px}
@media(max-width:900px){.fw-hero__visual{min-height:0;padding-bottom:60px}.fw-hero__visual .fw-snap--a{position:relative;width:100%;margin:0}.fw-hero__visual .fw-snap--b{position:absolute;width:36%;left:14px;bottom:0}.fw-hero__visual .fw-sticker{right:14px;bottom:26px;width:104px;height:104px}.fw-hero__visual .fw-sticker b{font-size:2rem}}
.fw-hero__visual .fw-snap--a{width:92%;margin-left:auto;transform:none;--ar:5/5.2;box-shadow:16px 16px 0 var(--lv-red)}
.fw-hero__visual .fw-snap--b{left:-28px;bottom:-22px;width:40%;transform:none;--ar:1/1;box-shadow:8px 8px 0 var(--lv-navy);border-color:#fff}
.fw-snap{border:0;border-radius:0;background:#fff;padding:8px;box-shadow:10px 10px 0 var(--lv-red)}
.fw .fw-snap__img img{filter:saturate(.95) contrast(1.02)}
.fw-snap figcaption{font:600 .8rem Archivo,sans-serif;font-stretch:92%;letter-spacing:.06em;text-transform:uppercase;color:var(--lv-navy);padding:10px 4px 2px}
.fw-snap--tape::before{display:none}
.fw-snap--duo .fw-snap__img::after{display:none}.fw-snap--duo .fw-snap__img img{filter:none}
.fw-sticker{background:var(--lv-red);color:#fff;border:0;box-shadow:0 0 0 5px #fff,0 0 0 8px var(--lv-red);transform:rotate(0);width:132px;height:132px}
.fw-sticker b{font:800 2.7rem Archivo,sans-serif;font-stretch:75%;letter-spacing:0}.fw-sticker span{font-family:Archivo,sans-serif;font-weight:700;letter-spacing:.12em}
.fw-hero__visual .fw-sticker{right:-8px;bottom:30%;transform:none}

/* ---------- trust ---------- */
.fw-trust{background:var(--lv-red);color:#fff}
.fw-trust__item{border-left:1px solid rgb(255 255 255/.32)}.fw-trust__item:first-child{border-left:0}
.fw-trust__item b{color:#fff;font:800 clamp(1.9rem,1.4rem + 1.4vw,2.7rem)/1 Archivo,sans-serif;font-stretch:72%;letter-spacing:.01em;text-transform:uppercase}
.fw-trust__item span{color:#FFE3E5}

/* ---------- services list ---------- */
.fw-index__photo .fw-snap{transform:none;--ar:4/5}
.fw-index__list{border-top:4px solid var(--lv-navy)}.fw-index__list li{border-bottom:1px solid #D4D5E4}
.fw-index__list a:hover{background:var(--lv-navy);color:#fff;padding-left:18px}
.fw-index__list a:hover .fw-index__d{color:#C9CAE2}.fw-index__list a:hover .fw-index__n{color:var(--lv-red-lt)}
.fw-index__n{color:var(--lv-red);font:800 1rem Archivo,sans-serif;font-stretch:80%;letter-spacing:.08em}
.fw-index__t{font-size:clamp(1.5rem,1.15rem + 1.1vw,2.2rem)}
.fw-index__go{border:0;border-radius:0;background:var(--lv-red);color:#fff;clip-path:var(--lv-chamfer-sm)}
.fw-index__list a:hover .fw-index__go{background:#fff;color:var(--lv-red);transform:none}

/* ---------- meet ---------- */
.fw-meet{background:var(--fw-cream);position:relative}
.fw-meet::before{content:"";position:absolute;left:0;top:0;width:100%;height:10px;background:var(--lv-stripes);opacity:.9}
.fw-meet__m1,.fw-meet__m2{transform:none}
.fw-ticks .fw-i{background:var(--lv-red);color:#fff;border:0;border-radius:0;clip-path:var(--lv-chamfer-sm)}

/* ---------- steps ---------- */
.fw-step{border-top:4px solid var(--lv-navy);padding-top:24px;position:relative}
.fw-step::before{content:"";position:absolute;left:0;top:-4px;width:64px;height:4px;background:var(--lv-red)}
.fw-step__n{font:800 clamp(4.4rem,3rem + 4vw,6.8rem)/.9 Archivo,sans-serif;font-stretch:62%;color:transparent;-webkit-text-stroke:2px var(--lv-red);letter-spacing:0}
.fw-step:not(:last-child)::after{display:none}
.fw-step h3{text-transform:uppercase;font-stretch:72%;font-size:1.7rem}

/* ---------- why / pricing / cards ---------- */
.fw-why__card{border:0;border-top:5px solid var(--lv-navy);border-radius:0;box-shadow:0 20px 40px -26px rgb(2 2 42/.5)}
.fw-why__big{color:var(--lv-red);font-family:Archivo,sans-serif;font-stretch:70%}
.fw-price{border:0;border-radius:0;box-shadow:0 30px 60px -34px rgb(2 2 42/.6);clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}
.fw-price>div{background:var(--lv-red);color:#fff;border-right:0;position:relative}
.fw-price>div::after{content:"";position:absolute;right:-14px;top:0;bottom:0;width:28px;background:var(--lv-red);clip-path:polygon(0 0,50% 0,100% 100%,0 100%)}
.fw-price__amt{font-family:Archivo,sans-serif;font-stretch:66%;letter-spacing:0;color:#fff}.fw-price .fw-eyebrow--light,.fw-price .fw-label{color:#FFD6D9}
.fw-price .fw-btn--cta{background:#fff;color:var(--lv-red)!important}.fw-price .fw-btn--cta:hover{background:var(--lv-navy);color:#fff!important}
.fw-price li .fw-i{background:var(--lv-red);border:0;border-radius:0;color:#fff}
.fw-card{border:1px solid #D4D5E4;border-radius:0;border-top:4px solid var(--lv-navy)}
.fw-card:hover{transform:translateY(-3px);box-shadow:8px 8px 0 var(--lv-red)}
.fw-card__img{border-bottom:0}.fw-card__cat{color:var(--lv-red);font-family:Archivo,sans-serif;letter-spacing:.16em}
.fw-card__title{font-stretch:80%;font-size:1.3rem}
.fw-pagination .page-numbers{border:2px solid var(--lv-navy);border-radius:0}.fw-pagination .current{background:var(--lv-red);color:#fff;border-color:var(--lv-red)}
.fw-toolcard{border:0;border-top:5px solid var(--lv-red);border-radius:0;box-shadow:0 22px 44px -28px rgb(2 2 42/.5)}.fw-toolcard:hover{transform:translateY(-3px);box-shadow:0 26px 44px -26px rgb(2 2 42/.6)}
.fw-toolcard b{font-stretch:78%;text-transform:uppercase;letter-spacing:.005em}

/* ---------- reviews ---------- */
.fw-rs{border:0;border-top:4px solid var(--lv-navy);border-radius:0;box-shadow:0 16px 30px -22px rgb(2 2 42/.55)}.fw-rs b{font-stretch:75%;color:var(--lv-red)}.fw-rs .fw-stars{color:var(--lv-red)}
.fw-review{border:1px solid #D9DAE8;border-top:4px solid var(--lv-navy);border-radius:0;box-shadow:0 18px 34px -26px rgb(2 2 42/.5)}
.fw-reviews--slider .fw-review{border-radius:0;box-shadow:0 18px 34px -26px rgb(2 2 42/.5)}
.fw-review:hover{box-shadow:0 22px 38px -24px rgb(2 2 42/.55)}
.fw-review__q{color:#F1E0E2}.fw-review__stars{color:var(--lv-red)}
.fw-review blockquote p{color:#222248}.fw-review footer{border-top:1px solid #E3E4EF}
.fw-review__av{border-radius:0}.fw-review__av--0{background:#F1E0E2;color:var(--lv-red)}.fw-review__av--1{background:var(--lv-navy);color:#fff}.fw-review__av--2{background:var(--lv-red);color:#fff}
.fw-review__logo{border-radius:0;box-shadow:none;background:none}
.fw-review__src{border-radius:0;background:var(--fw-cream);border-color:#D9DAE8;color:var(--lv-navy)}
.fw-review__more{color:var(--lv-red)}
.fw-rslider__nav button{border-radius:0;border:2px solid var(--lv-navy);box-shadow:none;clip-path:var(--lv-chamfer-sm)}.fw-rslider__nav button:hover{background:var(--lv-red);border-color:var(--lv-red);transform:none}

/* ---------- brands band ---------- */
.fw-brands{background:var(--lv-navy);color:#fff;border-block:0;position:relative;padding-block:26px}
.fw-brands::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--lv-stripes)}
.fw-brands__label{color:#C9CAE2}.fw-pausebtn{border:2px solid #7B7CA6;color:#fff;border-radius:0}
.fw-marquee li{color:#fff;font-stretch:70%;text-transform:uppercase;letter-spacing:.02em}
.fw-marquee li::after{content:"";width:10px;height:10px;background:var(--lv-red);transform:rotate(45deg);font-size:0;margin:0 clamp(22px,3vw,44px)}
.fw-marquee li a:hover{text-decoration-color:var(--lv-red)}

/* ---------- areas ---------- */
.fw-chip{border:1px solid var(--lv-navy);border-radius:0;font-family:Archivo,sans-serif;font-stretch:92%;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}
a.fw-chip:hover,.fw-chip.is-on{background:var(--lv-red);border-color:var(--lv-red);color:#fff;transform:none}
.fw-map{border:0;border-radius:0;box-shadow:12px 12px 0 var(--lv-red);background:#fff}
.fw-mpt .c{fill:var(--lv-red)}.fw-mpt .h{fill:var(--lv-red);opacity:.2}.fw-mpt text{fill:var(--lv-navy);font-family:Archivo,sans-serif;font-weight:700}
.fw-areas__media .fw-snap{transform:none}.fw-areas__note a{color:var(--lv-red)}

/* ---------- faq ---------- */
.fw-faq{border-top:4px solid var(--lv-navy)}.fw-faq__item{border-bottom:1px solid #D4D5E4}
.fw-faq__item summary{font-stretch:80%;letter-spacing:0}
.fw-faq__item summary i{border:0;border-radius:0;background:var(--fw-cream);color:var(--lv-red);clip-path:var(--lv-chamfer-sm)}.fw-faq__item[open] summary i{background:var(--lv-red);color:#fff}

/* ---------- CTA band + page hero ---------- */
.fw-ctaband{background:var(--lv-navy);color:#fff;overflow:hidden}
.fw-ctaband::before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:var(--lv-red)}
.fw-ctaband::after{content:"";position:absolute;left:14px;top:0;bottom:0;width:30px;background:var(--lv-stripes);opacity:.9}
.fw-ctaband h2{color:#fff}.fw-ctaband h2 a{color:#fff}.fw .fw-ctaband__text{color:#C9CAE2}
.fw-ctaband__media{transform:translateY(-84px)}.fw-ctaband__media .fw-snap{box-shadow:10px 10px 0 var(--lv-red)}
.fw-ctaband .fw-label{color:var(--lv-red-lt)}
.fw-cta{border-radius:0;border:0;box-shadow:none;background:var(--lv-navy)}
.fw-pagehero{background:var(--lv-navy);color:#fff;border-bottom:8px solid var(--lv-red);position:relative;overflow:hidden}
.fw-pagehero::before{content:"";position:absolute;right:0;top:0;bottom:0;width:36%;background:var(--lv-navy-2);clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}
.fw-pagehero .fw-wrap{position:relative;z-index:1}
.fw-pagehero h1,.fw-pagehero .fw-h1{color:#fff}.fw-pagehero .fw-mark{color:var(--lv-red-lt)}
.fw-pagehero .fw-lead{color:#D6D7EA}.fw-pagehero .fw-crumbs,.fw-pagehero .fw-crumbs a{color:#B5B7D6}.fw-pagehero .fw-crumbs a:hover{color:#fff}
.fw-pagehero__img{transform:none;--ar:4/3.1}.fw-pagehero .fw-snap{box-shadow:12px 12px 0 var(--lv-red)}
.fw-pagehero .fw-btn--ghost{background:transparent;color:#fff!important;box-shadow:inset 0 0 0 2px #fff}.fw-pagehero .fw-btn--ghost:hover{background:#fff;color:var(--lv-navy)!important}
.fw-contact__form{border:0;border-top:5px solid var(--lv-red);border-radius:0;box-shadow:0 26px 50px -30px rgb(2 2 42/.55)}
.fw-crow__ic{border:0;border-radius:0;background:var(--lv-red);color:#fff;clip-path:var(--lv-chamfer-sm)}.fw-crow a:hover{color:var(--lv-red)}
.fw-sec--booking{background:var(--fw-cream)}

/* ---------- footer ---------- */
.fw-footer{background:var(--lv-navy);color:#B9BAD6;position:relative}
.fw-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:linear-gradient(90deg,var(--lv-red) 0 38%,transparent 38%),var(--lv-stripes)}
.fw-footer{padding-top:calc(clamp(48px,6vw,80px) + 10px)}
.fw-ftile{border:1px solid rgb(255 255 255/.22);border-radius:0}
a.fw-ftile:hover{border-color:var(--lv-red-lt);background:rgb(255 255 255/.05);transform:none}
.fw-ftile__ic{background:var(--lv-red);color:#fff;border-radius:0;clip-path:var(--lv-chamfer-sm)}
.fw-ftile small{color:var(--lv-red-lt);font-family:Archivo,sans-serif;letter-spacing:.16em}
.fw-ftile b{font-family:Archivo,sans-serif;font-stretch:85%}
.fw-ftile--cta{background:var(--lv-red);border:0}.fw-ftile--cta small{color:#FFD6D9}.fw-ftile--cta .fw-ftile__ic{background:#fff;color:var(--lv-red)}a.fw-ftile--cta:hover{background:var(--lv-red-dk)}
.fw-fh{font-stretch:78%;text-transform:uppercase;letter-spacing:.06em;font-size:1.05rem}.fw-fh::after{background:var(--lv-red);height:4px;border-radius:0;width:44px}
.fw .fw-footer .fw-flist a{color:#B9BAD6}.fw-footer a:hover{color:#fff}
.fw-footer__areas b{color:#fff}
.fw-mbar{border-top:4px solid var(--lv-red)}.fw-mbar a{border-radius:0;border:2px solid var(--lv-navy);font-family:Archivo,sans-serif;font-stretch:90%;text-transform:uppercase;letter-spacing:.08em}
.fw-mbar__book{background:var(--lv-red);border-color:var(--lv-red);box-shadow:none}

/* ---------- dropdowns (booking mini-form) ---------- */
.fw-dd__btn::after{filter:none}
.fw-dd__list{border:0;border-top:4px solid var(--lv-red);border-radius:0;box-shadow:0 26px 46px -20px rgb(2 2 42/.55)}
.fw-dd__list li{border-radius:0}.fw-dd__list li.is-active{background:var(--fw-cream)}
.fw-dd__list.is-grid{border-radius:0}.fw-dd__list.is-grid::before{color:var(--lv-red);font-family:Archivo,sans-serif}.fw-dd__list.is-grid::after{display:none}
.fw-dd__list.is-grid li{border:1px solid #D9DAE8;border-radius:0;background:#fff}
.fw-dd__list.is-grid li i{border-radius:0;background:var(--fw-cream);color:var(--lv-red)}
.fw-dd__list.is-grid li.is-active{border-color:var(--lv-navy);box-shadow:none;transform:none;background:var(--fw-cream)}.fw-dd__list.is-grid li.is-active i{background:var(--lv-red);color:#fff}
.fw-dd__list.is-grid li[aria-selected=true]{background:var(--lv-navy);border-color:var(--lv-navy);color:#fff}.fw-dd__list.is-grid li[aria-selected=true] i{background:var(--lv-red);color:#fff}
.fw-dd--box .fw-dd__btn{border:2px solid #C9CADB;border-radius:0}

/* ---------- article extras ---------- */
.fw-progress i{background:var(--lv-red)}
.fw-post__img img{border:0;border-radius:0}.fw-prose figure.wp-block-image img{border-radius:0;border:0}.fw-prose img{border-radius:0}
.fw-toc,.fw-prose .wp-block-rank-math-toc-block{background:var(--fw-cream);border:0;border-left:6px solid var(--lv-red);border-radius:0}
.fw-prose .wp-block-rank-math-toc-block h2{color:var(--lv-red);font-family:Archivo,sans-serif;padding:0}.fw-prose .wp-block-rank-math-toc-block h2::before{display:none}
.fw-postcta__card{border-radius:0;border:0;border-left:10px solid var(--lv-red);box-shadow:none}
.fw-related{background:var(--fw-cream)}
.fw-404__code{color:var(--lv-red);font-stretch:62%}

@media(max-width:900px){
  .fw-hero::before,.fw-hero::after{display:none}
  .fw-hero__visual{background:var(--lv-navy);padding:30px 22px 44px;max-width:none}
  .fw-hero__visual .fw-snap--a{width:100%;box-shadow:10px 10px 0 var(--lv-red)}
  .fw-hero__visual .fw-snap--b{left:6px;bottom:-14px}
  .fw-pagehero::before{display:none}
  .fw-trust__item{border-left:0;border-top:1px solid rgb(255 255 255/.3)}
}
@media(max-width:560px){.fw .fw-hero__title{font-size:2.6rem}.fw-btn{height:50px;padding:0 1.3rem}}

/* ---------- booking wizard, tools, photo strip ---------- */
.fw-booking{border:0;border-top:6px solid var(--lv-red);border-radius:0;box-shadow:0 30px 60px -36px rgb(2 2 42/.6);--b:var(--lv-red);--y:var(--lv-red)}
.fw-bk-progress li{border:0;border-radius:0;height:7px;background:#D9DAE8}.fw-bk-progress li.done{background:var(--lv-navy)}.fw-bk-progress li.cur{background:var(--lv-red)}
.fw-booking h2{font-family:Archivo,sans-serif;font-stretch:76%;text-transform:uppercase;letter-spacing:.005em;font-size:clamp(1.8rem,1.3rem + 1.6vw,2.5rem)}
.fw-bk-chip{border:2px solid #C9CADB;border-radius:0;font-family:Archivo,sans-serif;font-stretch:92%;font-weight:700;letter-spacing:.02em}
.fw-bk-chip:hover{transform:none;box-shadow:none;border-color:var(--lv-navy)}
.fw-bk-chip[aria-pressed=true]{background:var(--lv-navy);border-color:var(--lv-navy);color:#fff;box-shadow:none}
.fw-booking input[type=text],.fw-booking input[type=email],.fw-booking input[type=tel],.fw-booking input[type=date],.fw-booking textarea{border:2px solid #C9CADB;border-radius:0}
.fw-booking input:focus,.fw-booking textarea:focus{outline:0;border-color:var(--lv-navy);box-shadow:0 0 0 3px rgb(177 21 34/.25)}
.fw-bk-btn{border:0;border-radius:0;height:54px;font:800 .95rem Archivo,sans-serif;font-stretch:90%;letter-spacing:.09em;text-transform:uppercase;background:#fff;color:var(--lv-navy);box-shadow:inset 0 0 0 2px var(--lv-navy)}
.fw-bk-btn.primary{background:var(--lv-red);color:#fff;box-shadow:none;clip-path:var(--lv-chamfer)}.fw-bk-btn.primary:hover{transform:none;box-shadow:none;background:var(--lv-navy)}
.fw-bk-btn.ghost:hover{background:var(--lv-navy)}
.fw-bk-msg{border-radius:0;border-width:0;border-left:6px solid var(--lv-red)}
.fw-bk-sum{border:0;border-left:6px solid var(--lv-red);border-radius:0;background:var(--fw-cream)}
.fw-bk-done .tick{border:0;border-radius:0;background:var(--lv-red);color:#fff;box-shadow:none;clip-path:var(--lv-chamfer)}
.fw-combo__panel{border:0;border-top:4px solid var(--lv-red);border-radius:0;box-shadow:0 26px 46px -20px rgb(2 2 42/.55)}
.fw-combo__t{font-family:Archivo,sans-serif}.fw-combo__g button{border:1px solid #D9DAE8;border-radius:0}
.fw-combo__g button:hover,.fw-combo__g button:focus-visible{border-color:var(--lv-navy);transform:none;box-shadow:none;background:var(--fw-cream)}
.fw-day{border:1px solid #D9DAE8;border-radius:0}.fw-day:hover,.fw-day:focus-visible{border-color:var(--lv-navy);transform:none;box-shadow:none}
.fw-day.is-on{background:var(--lv-navy);border-color:var(--lv-navy);box-shadow:none}.fw-day.is-on small{color:#C9CAE2}
.fw-day b{font-family:Archivo,sans-serif;font-stretch:80%}
/* tools */
.fw-tool{border:0;border-top:6px solid var(--lv-red);border-radius:0;box-shadow:0 30px 60px -36px rgb(2 2 42/.6)}
.fw-tcard,.fw-trow{border:1px solid #D9DAE8;border-radius:0;box-shadow:none}
.fw-tcard:hover,.fw-tcard:focus-visible,.fw-trow:hover,.fw-trow:focus-visible{border-color:var(--lv-navy);transform:none;box-shadow:none;background:var(--fw-cream)}
.fw-tcard i{border-radius:0;background:var(--fw-cream);color:var(--lv-red)}
.fw-tres,.fw-tbanner,.fw-tstop,.fw-tcta{border-radius:0}
.fw-tool h2,.fw-tool__h,.fw-tres h3{font-family:Archivo,sans-serif;font-stretch:78%;text-transform:uppercase}
.fw-rr .fw-field input{border-radius:0;border:2px solid #C9CADB}
/* photo strip ([fw_photos]) */
.fw-photos figure{border-radius:0;border:0;border-top:4px solid var(--lv-navy);box-shadow:0 18px 34px -26px rgb(2 2 42/.5)}
.fw-photos img{border-radius:0}
.fw-photos figcaption{font-family:Archivo,sans-serif;font-stretch:92%;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;color:var(--lv-navy)}

/* page table of contents (service-area, error-code and about pages) */
.fw-pagetoc{background:var(--fw-cream);border-left:6px solid var(--lv-red);padding:18px 24px 14px;margin:0 0 2.2rem;font-size:.97rem}
.fw-pagetoc b{display:block;font:800 .74rem Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--lv-red);margin-bottom:10px}
.fw-pagetoc ul{margin:0;padding:0;list-style:none;display:grid;gap:6px 28px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.fw-pagetoc li{margin:0!important}.fw-pagetoc a{color:var(--lv-navy);text-decoration:none;font-weight:600}.fw-pagetoc a:hover{color:var(--lv-red);text-decoration:underline}
.fw-photos img{object-position:50% 25%}.fw .fw-snap__img img{object-position:50% 30%}

/* ===== page rhythm: tighter sections, alternating bands, nicer photo strip (applies to every Elementor page) ===== */
:root{--fw-pad:clamp(40px,4.4vw,64px)}
.elementor-widget-wrap>.elementor-element:nth-child(odd):not(:has(.fw-hero,.fw-trust,.fw-brands,.fw-ctaband,.fw-pagehero,.fw-cta)){background:var(--fw-cream)}
.fw-sec,.fw-sec--soft,.fw-sec--paper,.fw-meet{background:transparent}
.fw-sec{padding-block:var(--fw-pad)}
.fw-sec--tight{padding-block:calc(var(--fw-pad) * .6)}
.fw-prose-sec .elementor-widget-container{padding:var(--fw-pad) clamp(18px,4vw,32px)}
.fw-prose-sec+.fw-prose-sec .elementor-widget-container{padding-top:0}
.fw-prose-sec:has(.fw-photos)+.fw-prose-sec .elementor-widget-container{padding-top:var(--fw-pad)}
.fw-prose-sec:has(.fw-photos) .elementor-widget-container{padding-top:calc(var(--fw-pad) * .8);padding-bottom:calc(var(--fw-pad) * .8)}
.fw-prose-sec:has(.fw-photos)~.fw-prose-sec:not(:has(.fw-photos)) .elementor-widget-container{padding-top:var(--fw-pad)}
.fw-ctaband{margin-top:0}
.fw-photos{width:min(1100px,calc(100vw - 36px));max-width:none;position:relative;left:50%;transform:translateX(-50%);margin:0;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(12px,1.8vw,22px)}
.fw-photos figure{position:relative;margin:0;border:0;border-radius:var(--fw-r-lg,8px);overflow:hidden;background:#101828;box-shadow:0 22px 40px -28px rgb(10 20 50/.6)}
.fw-photos img{aspect-ratio:4/3;object-fit:cover;object-position:50% 35%;transition:transform .6s ease;display:block;width:100%}
.fw-photos figure:hover img{transform:scale(1.04)}
.fw-photos figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:38px 16px 14px;color:#fff;font:700 .85rem/1.35 var(--fw-font-b,Inter,sans-serif);letter-spacing:.01em;background:linear-gradient(180deg,rgb(8 12 36/0),rgb(8 12 36/.86))}
@media(max-width:560px){.fw-photos{grid-template-columns:1fr}}
/* Top Town: square corners, red top rule on the photo strip */
.fw-photos figure{border-radius:0;border-top:5px solid var(--lv-red);box-shadow:0 22px 40px -28px rgb(2 2 42/.6)}
.fw-photos figcaption{font-family:Archivo,sans-serif;font-stretch:92%;letter-spacing:.05em;text-transform:uppercase;font-size:.78rem}
.elementor-widget-wrap>.elementor-element:nth-child(odd):not(:has(.fw-hero,.fw-trust,.fw-brands,.fw-ctaband,.fw-pagehero,.fw-cta)){background:#EDEEF5}
