/* Match the approved PHP mock-up while keeping every block editable in ACF. */
.lvt-icon{width:43px;height:43px;flex:none;color:var(--navy)}
.lvt-benefits{background:var(--cream);border-bottom:1px solid #f1f5f9}
.lvt-benefits__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 0}
.lvt-benefits__item{display:flex;align-items:center;gap:16px;padding:12px 24px}
.lvt-benefits__item+.lvt-benefits__item{border-left:1px solid #e2e8f0}
.lvt-benefits strong{display:block;font-size:15px;font-weight:900;line-height:1.5}
.lvt-benefits__item span{display:block;font-size:14px;color:#083d5bcc}
.lvt-section-heading{text-align:center;margin-bottom:28px}
.lvt-categories .lvt-section-heading h2{font-size:52px;letter-spacing:-.03em;line-height:1.1;margin:0}
.lvt-section-heading p{font-size:18px;font-weight:600;margin:4px 0 0}
.lvt-category-grid{gap:20px}
.lvt-category-card{min-height:270px;border-radius:16px;box-shadow:0 4px 18px rgba(8,61,91,.08)}
.lvt-category-card::after{inset:0;background:linear-gradient(to top,#fff,rgba(255,255,255,.65),transparent)}
.lvt-category-card__body{width:100%;padding:20px}
.lvt-category-card strong{font-size:24px;line-height:1.25}
.lvt-category-card small{font-size:14px;line-height:1.375;font-weight:600;margin:8px 0 12px}
.lvt-category-card .lvt-category-card__button{font-size:12px;font-weight:800;padding:8px 16px;background:var(--blue);color:#fff}
.lvt-category-card img{transition:transform .5s}
.lvt-category-card:hover img{transform:scale(1.03)}
.lvt-hero{min-height:390px;padding:56px 0}
.lvt-hero::before{background-image:linear-gradient(90deg,#083d5bb3,#083d5b40,transparent),var(--lvt-hero-image,url('../images/hero.jpg'));background-position:center,65% center}
.lvt-hero h1{font-size:60px;line-height:.92;letter-spacing:-.025em;max-width:600px;margin:0;text-shadow:0 2px 12px #0006}
.lvt-hero p{max-width:576px;font-size:16px;line-height:1.625;font-weight:600;margin:12px 0 0;text-shadow:0 2px 12px #0006}
.lvt-hero p.lvt-hero__intro{font-size:20px;line-height:1.25;font-weight:700;margin-top:20px}
.lvt-hero .lvt-btn{margin-top:24px}
.lvt-hero__pill{position:absolute;right:7%;bottom:20px;margin:0;padding:8px 16px;font-size:14px;border-radius:8px;backdrop-filter:blur(8px)}
.lvt-steps{position:relative;isolation:isolate;overflow:hidden;padding:36px 0}
.lvt-steps::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--sky) 40%,#eef8fcf2 64%,#eef8fc00),url('../images/steps-bg.jpg') right center/46% auto no-repeat}
.lvt-steps>.lvt-container{position:relative}
.lvt-steps h2{font-size:30px;margin-bottom:20px}
.lvt-steps__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:768px;gap:20px}
.lvt-steps__icons{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.lvt-steps__number{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#2f8094;color:#fff;font-size:18px;font-weight:900}
.lvt-steps .lvt-icon{width:36px;height:36px}
.lvt-steps h3{font-size:17px;font-weight:900;line-height:1.5;margin:0}
.lvt-steps p{font-size:14px;line-height:1.375;font-weight:600;margin:4px 0 0}
.lvt-steps .lvt-btn{position:absolute;right:0;bottom:0}
.lvt-home-products ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
.lvt-service{padding:48px 0;color:#fff;background:linear-gradient(90deg,#083d5be6,#083d5bcc,#083d5ba6),var(--lvt-service-image,url('../images/service-bg.jpg')) center/cover}
.lvt-service__grid{display:grid;grid-template-columns:1.4fr .9fr;gap:32px;align-items:center}
.lvt-service__intro h2{font-size:36px;font-weight:900;line-height:1.25;margin:0;text-shadow:0 2px 12px #0006}
.lvt-service__intro p{font-size:18px;font-weight:600;line-height:1.625;max-width:576px;margin:16px 0 0}
.lvt-service__card{background:#fff;color:var(--navy);border-radius:16px;padding:28px;box-shadow:0 12px 30px #083d5b1a}
.lvt-service__card h3{font-size:24px;font-weight:900;line-height:1.3;margin:0}
.lvt-service__card p{font-weight:600;line-height:1.625;margin:8px 0 0}
.lvt-service__card .lvt-btn{margin-top:20px}
.lvt-faq h2{font-size:30px}
.lvt-faq__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 32px;align-items:start}
.lvt-faq details{margin:0;padding:12px 16px}
.lvt-faq summary{font-size:14px}
.lvt-faq details>div{font-size:14px}
@media(max-width:1023px){.lvt-steps .lvt-btn{position:static;margin-top:24px}.lvt-steps::before{display:none}.lvt-service__grid{grid-template-columns:1fr}.lvt-benefits__item{padding-inline:16px}.lvt-home-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.lvt-benefits__grid{grid-template-columns:1fr}.lvt-benefits__item+.lvt-benefits__item{border-left:0;border-top:1px solid #e2e8f0}.lvt-categories{padding-block:40px}.lvt-categories .lvt-section-heading h2{font-size:44px}.lvt-category-grid{grid-template-columns:1fr}.lvt-hero{padding:40px 0;min-height:390px}.lvt-hero h1{font-size:48px}.lvt-hero__pill{display:block;position:static;width:fit-content;background:none;padding:0;margin-top:16px;backdrop-filter:none}.lvt-faq__grid{grid-template-columns:1fr}.lvt-service{padding:36px 0}.lvt-service__card{padding:24px}}
@media(max-width:639px){.lvt-steps__grid{grid-template-columns:1fr}.lvt-steps{padding:28px 0}.lvt-home-products ul.products{grid-template-columns:1fr}}

.lvt-products-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:20px}
.lvt-products-heading h2{font-size:30px;margin:0}
.lvt-products-heading__link{font-size:14px;font-weight:700;white-space:nowrap}
.lvt-home-products .lvt-product-card__name{font-size:18px}
.lvt-home-products .lvt-product-card__body{padding:16px}
.lvt-home-products .lvt-product-card__foot .button{font-size:12px!important;padding:10px 16px!important}
.lvt-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1fr 1.1fr;gap:32px}
.lvt-footer__grid h3{font-size:16px}.lvt-footer__grid ul,.lvt-footer__grid p{font-size:14px}
@media(max-width:900px){.lvt-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.lvt-products-heading{align-items:start;flex-direction:column}.lvt-footer__grid{grid-template-columns:1fr}.lvt-footer__grid>div:first-child{grid-column:auto}}

/* WooCommerce clearfix pseudo-elements must not occupy CSS grid cells. */
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.lvt-single .woocommerce-Tabs-panel :is(h2,h3),.lvt-content-block .entry-content :is(h2,h3){margin:1.4rem 0 .55rem;line-height:1.25}
.lvt-single .woocommerce-Tabs-panel>:first-child{margin-top:0}
.lvt-single .woocommerce-Tabs-panel :is(p,ul,ol){margin:.5rem 0 .9rem}
.lvt-single :is(.related,.upsells)>h2{margin:0 0 1rem;line-height:1.25}
.lvt-single .woocommerce ul.products li.product a img,.lvt-single ul.products li.product a img{height:100%;margin:0;object-fit:cover}
.lvt-nav-list :is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>a{color:var(--orange)}
.lvt-sub-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:30px;padding:4px;border:0;background:transparent;color:inherit;vertical-align:middle}
.lvt-sub-toggle::before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.lvt-sub-toggle[aria-expanded=true]::before{transform:rotate(225deg)}
.lvt-nav-list li.is-open>.sub-menu{display:block}
.lvt-tier-choice{margin:1rem 0}.lvt-tier-choice label{display:block;font-weight:800;margin-bottom:.4rem}
.lvt-tier-choice select{width:100%;padding:.75rem;border:1px solid #b6d1db;border-radius:.5rem;background:#fff;color:var(--navy)}
.lvt-tier-choice .lvt-rental-dates__note{margin-top:.5rem}
.lvt-pending-options fieldset{padding:0;border:0;margin:0;min-width:0}
.lvt-pending-options input:disabled,.lvt-pending-options select:disabled{opacity:.7}
.lvt-single .single_add_to_cart_button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.lvt-rental-total{font-weight:800;margin:.7rem 0}
.lvt-faq-page{padding-block:2.5rem 3.5rem;max-width:900px}
.lvt-faq-page .lvt-section-heading{margin-bottom:1.5rem}
.lvt-faq-page .lvt-faq__grid{grid-template-columns:1fr;gap:12px}
.lvt-faq-page details{border:1px solid var(--line);border-radius:12px;padding:0;background:#fff;box-shadow:0 3px 14px #083d5b08;overflow:hidden}
.lvt-faq-page summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;list-style:none;font-size:1.05rem;font-weight:800;padding:18px 22px;cursor:pointer}
.lvt-faq-page summary::-webkit-details-marker{display:none}
.lvt-faq-page summary::after{content:'+';font-size:1.5rem;color:var(--orange);line-height:1;flex:none}
.lvt-faq-page details[open] summary{background:var(--sky)}
.lvt-faq-page details[open] summary::after{content:'−'}
.lvt-faq-page details>div{padding:4px 22px 16px;font-size:1rem;line-height:1.65}
.lvt-faq-page details>div p{margin:.75rem 0 0}
.lvt-faq-page details>div a{text-decoration:underline;color:var(--blue)}
@media(max-width:850px){.lvt-sub-toggle{width:40px;height:40px}.lvt-faq-page{padding-block:1.5rem 2.5rem}}
.lvt-hero.lvt-hero--compact{min-height:220px;padding:40px 0}
.lvt-hero--compact h1{font-size:clamp(2rem,4vw,3rem);line-height:1.12;max-width:800px}
.lvt-hero--compact p{max-width:650px}
.lvt-faq-page+.lvt-content-block{padding-top:0;padding-bottom:2.5rem;text-align:center}
.woocommerce .lvt-single .summary .price{color:var(--navy);font-size:1.8rem;font-weight:900}
.woocommerce .lvt-single button.button.alt{background:var(--orange);color:#fff}
.woocommerce .lvt-single button.button.alt:hover{background:#d96800}
.lvt-single .price .lvt-tax-note{display:block;font-size:.85rem;font-weight:500;color:#456677}
.lvt-product-card__foot .lvt-tax-note{display:none}
.lvt-account{display:inline-flex;align-items:center;justify-content:center;width:36px;height:40px;flex:none;color:var(--navy);border-radius:8px;text-decoration:none}
.lvt-account svg{width:23px;height:23px}.lvt-account:hover{color:var(--orange);background:var(--sky)}
@media(max-width:390px){.lvt-header__actions>.lvt-btn{padding:.6rem .5rem;font-size:.72rem}.lvt-account{width:30px}}

/* Commerce pages share the site's 1180px container and responsive side gutters. */
:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .lvt-content>.entry-content{width:100%;max-width:none}
:is(.woocommerce-cart,.woocommerce-checkout) .entry-content>:is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout){width:100%;max-width:none;margin-inline:0}

/* Keep editorial headings proportionate to the body copy. */
.lvt-content-block h2{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.25}
.lvt-content-block h3{font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.3}

/* Accessibility: readable orange controls, usable targets and narrow-screen reflow. */
:root{--orange:#b95600}
.lvt-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce .lvt-single button.button.alt:hover{background:#934500}
.lvt-footer a{display:inline-block;min-height:24px}
.lvt-content .entry-content,.lvt-content-block .entry-content,.lvt-page-hero h1{overflow-wrap:anywhere}
.woocommerce ul.products li.product .price{color:var(--navy)}
.lvt-nav-list li.is-dismissed>.sub-menu{display:none}
:focus-visible{outline-color:#083d5b;outline-offset:4px;box-shadow:0 0 0 2px #fff}
html{scroll-padding-top:110px}
@media(max-width:360px){.lvt-brand{gap:.35rem}.lvt-brand__mark{width:24px;height:30px}.lvt-brand strong{font-size:.69rem}.lvt-brand small{font-size:.46rem;letter-spacing:.12em}.lvt-header__actions{gap:.15rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.woocommerce form .show-password-input{min-width:32px;min-height:32px}
@media(max-width:480px){
 .woocommerce-cart table.wc-block-cart-items{width:100%;table-layout:fixed}
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row{grid-template-columns:56px minmax(0,1fr);column-gap:12px}
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product{grid-column:2;grid-row:1;min-width:0}
 .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total{grid-column:2;grid-row:2;justify-self:start;padding:12px 0 0;text-align:left}
}
/* Keep white banner text legible even on the lightest parts of a photo. */
.lvt-hero::before{background-image:linear-gradient(90deg,#083d5beb 0%,#083d5bc7 55%,#083d5b33 100%),var(--lvt-hero-image,url('../images/hero.jpg'))}
.lvt-page-hero::before{background-image:linear-gradient(90deg,#083d5beb 0%,#083d5bc7 55%,#083d5b33 100%),url('../images/hero.jpg')}
@media(max-width:767px){.lvt-hero::before{background-image:linear-gradient(#083d5bd9,#083d5bd9),var(--lvt-hero-image,url('../images/hero.jpg'))}.lvt-page-hero::before{background-image:linear-gradient(#083d5bd9,#083d5bd9),url('../images/hero.jpg')}}

/* Related products: four cards per desktop row; existing tablet/mobile layout retained. */
@media(min-width:851px){.lvt-single .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Keep card prices consistent on the homepage and WooCommerce product lists. */
.lvt-product-card__foot .price,
.woocommerce ul.products li.product .lvt-product-card__foot .price{
    font-size:1.3rem;
    font-weight:900;
    color:var(--navy);
    margin:0;
}

/* Display the supplied logo without its large white top/bottom margins. */
.lvt-brand .custom-logo--vsbt{width:240px;height:82px;max-height:none;object-fit:cover;object-position:center}
@media(max-width:1050px){.lvt-brand .custom-logo--vsbt{width:200px;height:70px}}
@media(max-width:600px){.lvt-brand .custom-logo--vsbt{width:140px;height:50px}}
@media(max-width:360px){.lvt-brand .custom-logo--vsbt{width:120px;height:44px}}
