:root{
  --navy:#0e1b29;--navy-2:#152536;--navy-3:#203246;--gold:#e8b331;--gold-dark:#c89417;--ink:#111820;--muted:#67707b;--off:#f7f5ef;--line:#e7e6e1;--white:#fff;--shadow:0 16px 40px rgba(11,24,38,.10);--radius:12px;--shell:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.6}.shell{width:min(calc(100% - 40px),var(--shell));margin-inline:auto}.narrow{max-width:850px}.narrow-wide{max-width:1030px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;background:#fff;color:#111;padding:10px 14px}.skip-link:focus{top:16px}.section{padding:82px 0}.center-heading{text-align:center;font-size:clamp(1.7rem,3vw,2.35rem);line-height:1.12;margin:0 0 40px;letter-spacing:-.025em;text-transform:uppercase}.section-intro{max-width:760px;margin:0 auto 35px;color:var(--muted)}.section-intro.center{text-align:center}.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.gold-text{color:var(--gold-dark)}
.gold-button,.ghost-button,.outline-gold-button,.outline-light-button,.card-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border-radius:4px;text-transform:uppercase;letter-spacing:.045em;font-weight:800;font-size:.82rem;transition:.2s ease;border:1px solid transparent}.gold-button{background:var(--gold);color:#102030;box-shadow:0 8px 20px rgba(232,179,49,.2)}.gold-button:hover{background:#f1c24b;transform:translateY(-1px)}.ghost-button{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(13,27,41,.35)}.ghost-button:hover{border-color:var(--gold);color:var(--gold)}.outline-gold-button{border-color:var(--gold);color:var(--gold);background:transparent}.outline-gold-button:hover{background:var(--gold);color:var(--navy)}.outline-light-button{border-color:#d8d2c6;background:#fff;color:#1a2632}.outline-light-button:hover{border-color:var(--gold)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(12,25,38,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(12px)}.site-header.is-scrolled{box-shadow:0 8px 24px rgba(0,0,0,.16)}.header-inner{height:78px;display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:22px}.brand img{width:172px;height:auto}.main-nav{display:flex;align-items:center;justify-content:center;gap:28px}.main-nav>a{font-size:.78rem;font-weight:700;text-transform:uppercase;white-space:nowrap;position:relative}.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;height:2px;bottom:-10px;background:var(--gold);transition:.2s}.main-nav>a:hover:after{right:0}.main-nav .nav-cta{background:var(--gold);color:var(--navy);padding:11px 17px;border-radius:4px}.language-switcher{position:relative}.language-button{border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;padding:9px 10px;border-radius:4px;font-size:.75rem;font-weight:800;cursor:pointer}.language-menu{display:none;position:absolute;right:0;top:calc(100% + 10px);min-width:150px;background:#fff;color:var(--ink);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.language-menu.open{display:block}.language-menu a{display:block;padding:10px 14px;font-size:.9rem}.language-menu a:hover{background:var(--off)}.nav-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:8px}.nav-toggle span:not(.sr-only){display:block;height:2px;background:#fff;margin:5px 0}
.hero-home{position:relative;min-height:560px;background:var(--navy);color:#fff;overflow:hidden}.hero-image{position:absolute;right:0;top:0;bottom:0;width:58%;background-size:cover;background-position:center}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(14,27,41,.67) 26%,rgba(14,27,41,.08) 64%)}.hero-shell{min-height:560px;display:flex;align-items:center;position:relative;z-index:2}.hero-copy{max-width:650px;padding:56px 0}.hero-copy h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:.98;letter-spacing:-.04em;text-transform:uppercase;margin:12px 0 22px;max-width:680px}.hero-copy h1 span{display:block;color:var(--gold)}.hero-copy .hero-text{max-width:560px;color:#e5e9ed;font-size:1.05rem}.hero-copy .hero-text p{margin:0 0 14px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-badges{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;color:#d9dee3;font-size:.82rem}.hero-badges span{display:inline-flex;gap:8px;align-items:center}
.product-choice{background:#fff;padding-top:56px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.product-card{border:1px solid var(--line);background:#fff;box-shadow:0 8px 30px rgba(20,32,45,.05);display:grid;grid-template-columns:42% 1fr;grid-template-rows:1fr auto;min-height:415px}.product-photo{grid-row:1/2;height:100%;min-height:325px;overflow:hidden}.product-photo img{width:100%;height:100%;object-fit:cover}.product-content{padding:28px 28px 20px}.product-content h3{font-size:1.45rem;line-height:1.1;text-transform:uppercase;margin:8px 0 10px}.product-content p{color:#4f5862;font-size:.94rem;margin:0 0 12px}.mini-badge{display:inline-block;background:#f6d773;color:#443008;padding:5px 8px;border-radius:2px;font-size:.67rem;font-weight:900;text-transform:uppercase}.check-list{padding:0;margin:14px 0 0;list-style:none;font-size:.85rem}.check-list li{padding:4px 0 4px 20px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--gold-dark);font-weight:900}.card-cta{grid-column:1/-1;border-top:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);min-height:70px;flex-direction:column;gap:0}.card-cta:before{content:"▣";color:var(--navy);margin-right:8px}.card-cta small{font-weight:500;text-transform:none;letter-spacing:0;color:var(--muted)}.card-cta:hover{background:var(--off)}
.icon-features{padding-top:20px;padding-bottom:60px}.feature-row{display:grid;grid-template-columns:repeat(5,1fr);gap:0}.feature-item{text-align:center;padding:16px 20px;border-right:1px solid var(--line)}.feature-item:last-child{border-right:0}.feature-icon{display:inline-grid;place-items:center;font-size:2rem;color:var(--gold-dark);height:50px}.feature-item h3{font-size:.78rem;text-transform:uppercase;margin:7px 0 4px}.feature-item p{font-size:.78rem;color:var(--muted);line-height:1.4;margin:0}
.split-section{padding:0}.split-grid{display:grid;grid-template-columns:1fr 1fr;min-height:400px;width:100%;max-width:none}.split-copy{padding:70px max(40px,calc((100vw - var(--shell))/2));padding-right:70px;display:flex;flex-direction:column;justify-content:center}.split-copy h2{font-size:2rem;line-height:1.1;text-transform:uppercase;margin:10px 0 18px}.split-copy p{max-width:600px}.split-copy .gold-button{align-self:flex-start}.split-image{position:relative;min-height:400px;overflow:hidden;background:#dfe5ea}.split-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.split-dark{background:var(--navy);color:#fff}.split-dark .split-copy p{color:#dbe1e7}.split-light{background:#fff}.image-left .split-image{order:-1}
.text-section h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:10px 0 24px}.text-section .prose p{color:#4e5862;margin:0 0 18px}.text-dark{background:var(--navy);color:#fff}.text-dark .prose p{color:#d7dde3}.text-offwhite{background:var(--off)}
.steps-section{background:var(--off)}.steps-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.steps-grid article{background:#fff;padding:24px;border:1px solid #ece9e1;position:relative}.steps-grid article>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--gold);font-weight:900;color:var(--navy)}.steps-grid h3{font-size:.9rem;text-transform:uppercase;line-height:1.2;margin:16px 0 8px}.steps-grid p{font-size:.85rem;color:var(--muted);margin:0;line-height:1.5}
.scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.scenario-grid article{padding:30px;border:1px solid var(--line);background:#fff}.scenario-grid article>span{font-size:2rem}.scenario-grid h3{text-transform:uppercase;font-size:1rem}.scenario-grid p{color:var(--muted);font-size:.9rem}
.pricing-section{background:var(--off)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-grid article{background:#fff;border:1px solid var(--line);padding:28px;text-align:center}.price-grid h3{text-transform:uppercase;font-size:.9rem;margin:0 0 12px}.price-grid strong{display:block;font-size:2rem;color:var(--navy)}.price-grid span{display:block;color:var(--gold-dark);font-weight:700;font-size:.8rem;margin-top:6px}.pending-note{margin-top:28px;border-left:4px solid var(--gold);background:#fff8e7;padding:18px 20px;color:#5b4a1d}.pending-note strong{display:block;text-transform:uppercase;font-size:.78rem;letter-spacing:.06em}.pending-note p{margin:5px 0 0}
.locker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.locker-grid article{border:1px solid var(--line);padding:28px}.locker-grid h3{font-size:1.5rem;margin:0 0 8px}.locker-grid p{color:var(--muted)}.locker-grid small{font-weight:700;color:var(--gold-dark)}.center-actions{text-align:center;margin-top:28px;display:flex;justify-content:center}
.dual-map-section{background:#fff}.map-visual{height:370px;background:#ede7d9;position:relative;overflow:hidden;border:1px solid #d9d2c4}.map-water{position:absolute;right:-6%;top:-20%;width:54%;height:145%;background:#a8c9d5;transform:rotate(8deg);border-radius:44%}.map-road{position:absolute;left:12%;right:8%;top:42%;height:38px;background:#d6c8ac;transform:rotate(-8deg);box-shadow:0 -60px 0 -18px #d6c8ac,0 70px 0 -18px #d6c8ac}.map-pin{position:absolute;width:210px;background:#fff;box-shadow:var(--shadow);padding:16px 16px 15px 48px;border-radius:8px}.map-pin>span{position:absolute;left:13px;top:16px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--navy);font-weight:900}.map-pin b{display:block;font-size:.86rem;text-transform:uppercase}.map-pin small{display:block;color:var(--muted);line-height:1.35}.pin-small{left:17%;top:18%}.pin-large{right:17%;bottom:16%}
.reviews-section{background:#fff}.reviews-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.review-card{border:1px solid var(--line);padding:20px;background:#fff;box-shadow:0 8px 24px rgba(20,32,45,.03);min-width:0}.review-top{display:flex;gap:10px;align-items:center;justify-content:space-between}.stars{color:#f1c232;letter-spacing:1px;white-space:nowrap}.review-card p{font-size:.86rem;line-height:1.55;min-height:112px}.review-card-footer{margin-top:auto;font-size:.76rem;color:var(--muted)}.review-author{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;min-width:0}.review-author img{width:34px;height:34px;border-radius:50%;object-fit:cover;display:block;flex:0 0 34px}.review-author-details{min-width:0}.review-author strong,.review-author strong a{display:block;color:var(--ink);font-size:.78rem;line-height:1.3;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;word-break:break-word}.review-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:4px}.review-date{color:var(--muted);font-size:.73rem;white-space:nowrap}.review-source-link{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;font-family:Roboto,Arial,sans-serif;font-size:.72rem;font-weight:400;letter-spacing:normal;white-space:nowrap;color:#5e5e5e;text-decoration:none}.review-source-link:hover{text-decoration:underline;text-underline-offset:2px}.google-review-disclosure{max-width:920px;margin:16px auto 0;text-align:center;color:#6a7380;font-family:Roboto,Arial,sans-serif;font-size:.72rem;font-weight:400;letter-spacing:normal;line-height:1.4}.google-review-disclosure>span{white-space:nowrap;color:#5e5e5e}
.faq-section{background:var(--off)}.faq-list{border-top:1px solid #d9d5ca}.faq-list details{background:#fff;border-bottom:1px solid #d9d5ca}.faq-list summary{cursor:pointer;list-style:none;font-weight:800;padding:20px 56px 20px 20px;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{position:absolute;right:20px;top:18px;font-size:1.4rem;color:var(--gold-dark)}.faq-list details>div{padding:0 20px 20px;color:var(--muted)}.faq-list p{margin:0}
.partner-types{background:var(--navy);color:#fff}.partner-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.partner-type-grid span{border:1px solid rgba(255,255,255,.16);padding:18px 20px;text-align:center;font-weight:700}
.contact-section{background:var(--off)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.contact-copy h2{font-size:2.4rem;line-height:1.1}.contact-copy p{color:var(--muted)}.contact-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:25px 0}.contact-location{margin-top:25px;padding:20px;background:#fff;border-left:4px solid var(--gold)}.contact-form{background:#fff;padding:30px;box-shadow:var(--shadow);display:grid;gap:16px}.contact-form label{display:grid;gap:7px;font-size:.8rem;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.contact-form input,.contact-form textarea{width:100%;border:1px solid #d9dce0;background:#fff;padding:12px 13px;outline:none;text-transform:none;font-weight:500;letter-spacing:0}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,179,49,.12)}.contact-form .consent{display:flex;grid-template-columns:20px 1fr;text-transform:none;font-weight:500;letter-spacing:0;align-items:start}.contact-form .consent input{width:16px;height:16px}.hp-field{position:absolute!important;left:-9999px!important}.form-status.success{color:#18794e}.form-status.error{color:#b42318}
.final-cta{background:linear-gradient(130deg,#0d1c2b,#172b3e);color:#fff}.final-cta-inner{max-width:880px;text-align:center}.final-cta h2{font-size:clamp(2rem,4vw,3.2rem);text-transform:uppercase;line-height:1.05;margin:12px 0}.final-cta p{color:#dce2e8}.final-cta .hero-actions{justify-content:center}
.whatsapp-float{position:fixed;right:20px;bottom:20px;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-weight:900;z-index:40;box-shadow:0 10px 24px rgba(0,0,0,.22)}
.site-footer{background:#0d1b29;color:#eaf0f5;padding-top:62px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.25fr;gap:0}.footer-grid>div{padding:0 38px 34px;border-right:1px solid rgba(255,255,255,.10)}.footer-grid>div:first-child{padding-left:0}.footer-grid>div:last-child{border-right:0;padding-right:0}.footer-logo{width:220px;margin-bottom:22px}.footer-brand-col>p{color:#d1d7dd;max-width:280px}.footer-contact-list{display:grid;gap:10px;margin:22px 0;font-size:.92rem}.footer-contact-list a,.footer-contact-list span{color:#dce2e7}.footer-col h2,.footer-trust h2{text-transform:uppercase;font-size:.9rem;letter-spacing:.05em;margin:0 0 22px}.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}.footer-col li a{display:flex;gap:12px;align-items:flex-start;color:#e7ebef}.footer-col li span{color:var(--gold);font-size:1.3rem;line-height:1}.footer-book{margin-top:28px}.social-row{display:flex;gap:13px;margin-bottom:26px}.social-row a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#1f75d7;color:#fff;font-size:.72rem;font-weight:900}.reviews-badge{display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;align-items:center;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.10);margin-bottom:24px}.reviews-badge strong{grid-row:1/3;font-size:2.5rem;color:#4285f4}.reviews-badge span{font-weight:800}.reviews-badge small{color:#f3c948}.trust-logos{display:flex;gap:20px;align-items:center}.trust-logos img{max-width:120px;max-height:72px;object-fit:contain}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding:24px 0 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#aeb8c2;font-size:.76rem}.footer-bottom>span+span{border-left:1px solid rgba(255,255,255,.18);padding-left:20px}.payment-marks{display:flex;gap:8px;align-items:center}.payment-marks b{display:inline-flex;padding:4px 7px;border:1px solid rgba(255,255,255,.35);border-radius:4px;color:#fff;background:#17283a;font-size:.65rem}
@media(max-width:1250px){.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.header-inner{grid-template-columns:190px auto auto}.main-nav{gap:16px}.main-nav>a{font-size:.7rem}.feature-row{grid-template-columns:repeat(3,1fr)}.steps-grid{grid-template-columns:repeat(3,1fr)}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:30px}.footer-grid>div:first-child{padding-left:30px}.footer-grid>div:last-child{padding-right:30px}}
@media(max-width:820px){.shell{width:min(calc(100% - 28px),var(--shell))}.header-inner{height:70px;grid-template-columns:1fr auto auto}.brand img{width:150px}.nav-toggle{display:block;order:2}.language-switcher{order:3}.main-nav{position:fixed;left:0;right:0;top:70px;background:#0d1b29;display:none;flex-direction:column;align-items:stretch;padding:18px 20px 28px;gap:0;border-top:1px solid rgba(255,255,255,.08)}.nav-open .main-nav{display:flex}.main-nav>a{font-size:.9rem;padding:13px 4px;border-bottom:1px solid rgba(255,255,255,.08)}.main-nav .nav-cta{margin-top:14px;text-align:center;border:0}.hero-home,.hero-shell{min-height:690px}.hero-image{width:100%;opacity:.63}.hero-image:before{background:linear-gradient(90deg,rgba(14,27,41,.94),rgba(14,27,41,.58)),linear-gradient(0deg,var(--navy) 0%,transparent 45%)}.hero-copy{padding-top:42px;align-self:flex-end;padding-bottom:56px}.hero-copy h1{font-size:clamp(2.35rem,11vw,4rem)}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:40% 1fr}.feature-row{grid-template-columns:repeat(2,1fr)}.feature-item:nth-child(even){border-right:0}.split-grid{grid-template-columns:1fr}.split-copy{padding:48px 28px}.split-image{min-height:300px}.image-left .split-image{order:0}.steps-grid,.scenario-grid,.locker-grid,.price-grid{grid-template-columns:1fr 1fr}.partner-type-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start}.footer-bottom>span+span{border-left:0;padding-left:0}.map-pin{width:185px}.pin-small{left:8%}.pin-large{right:8%}}
@media(max-width:560px){body{font-size:15px}.section{padding:58px 0}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions>a{width:100%}.hero-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-card{grid-template-columns:1fr}.product-photo{min-height:245px;max-height:290px}.product-content{padding:22px}.feature-row{grid-template-columns:1fr 1fr}.feature-item{padding:12px 8px}.steps-grid,.scenario-grid,.locker-grid,.price-grid,.reviews-grid,.partner-type-grid{grid-template-columns:1fr}.center-heading{margin-bottom:28px}.map-visual{height:420px}.map-pin{width:210px}.pin-small{left:7%;top:13%}.pin-large{right:7%;bottom:10%}.footer-grid{grid-template-columns:1fr}.footer-grid>div{padding:30px 0}.footer-grid>div:first-child{padding-left:0}.footer-grid>div:last-child{padding-right:0}.footer-bottom{display:grid}.contact-form{padding:22px}.language-menu{right:-50px}}
.faq-jumps{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 0 34px}.faq-jumps a{display:inline-flex;border:1px solid #d8d5cc;background:#fff;padding:9px 13px;border-radius:999px;font-size:.78rem;font-weight:800}.faq-jumps a:hover{border-color:var(--gold)}.faq-group-title{font-size:1rem;text-transform:uppercase;letter-spacing:.04em;margin:34px 0 12px;color:var(--navy);scroll-margin-top:100px}

.social-row .social-placeholder{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#273a4e;color:#9db0c2;font-size:.72rem;font-weight:900;border:1px dashed rgba(255,255,255,.25)}
.map-embed-section{background:var(--off)}.map-embed-frame{height:420px;border:1px solid #d7d4cc;background:#e9e4d8;overflow:hidden}.map-embed-frame iframe{width:100%;height:100%;border:0}.map-pending{height:100%;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:#4b5964}.map-pending>span{font-size:2.4rem;color:var(--gold-dark)}.map-pending strong{font-size:1.1rem;color:var(--navy)}.map-pending p{max-width:560px;margin:8px auto 0}

/* Lock & Leisure 1.0.1 — icon/brand asset correction only. No layout redesign. */
.ui-icon{display:block;width:1em;height:1em;flex:0 0 auto;overflow:visible}
.button-icon{width:1.05rem;height:1.05rem;stroke-width:1.8}

/* Supplied Lock & Leisure logo: transparent asset, constrained to the existing header/footer areas. */
.brand{display:flex;align-items:center;min-width:0}
.brand img{width:auto;max-width:172px;height:auto;max-height:61px;object-fit:contain}
.footer-logo{width:auto;max-width:220px;height:auto;max-height:112px;object-fit:contain}

/* Semantic icons replacing text glyph placeholders. */
.hero-badges span{display:inline-flex;gap:8px;align-items:center}
.hero-badge-icon{width:1rem;height:1rem;color:var(--gold);stroke-width:1.7}
.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;font-size:inherit;color:var(--gold-dark)}
.feature-icon .ui-icon{width:34px;height:34px;stroke-width:1.55}
.card-cta:before{content:none}
.card-cta-main{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.card-cta-icon{width:1.05rem;height:1.05rem;color:var(--navy);stroke-width:1.8}
.scenario-grid article>span.scenario-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;color:var(--gold-dark);font-size:inherit}
.scenario-icon .ui-icon{width:34px;height:34px;stroke-width:1.6}
.map-pending>span{font-size:inherit;color:var(--gold-dark)}
.map-pending-icon{width:40px;height:40px;margin:0 auto 8px}
.whatsapp-float{font-size:inherit}
.whatsapp-float .whatsapp-icon{width:27px;height:27px;stroke-width:1.8}

/* Footer contact and action icons. */
.footer-contact-list a,.footer-contact-list span{display:flex;align-items:flex-start;gap:9px}
.footer-inline-icon{width:17px;height:17px;margin-top:3px;color:var(--gold);stroke-width:1.75}
.footer-book .button-icon{width:1rem;height:1rem}

/* Recognisable social marks instead of IG / FB / IN placeholders. */
.social-row a,.social-row .social-placeholder{color:#fff}
.social-row a.social-instagram,.social-row .social-instagram{background:radial-gradient(circle at 30% 110%,#ffd600 0 10%,#ff7a00 30%,#ff0169 55%,#d300c5 72%,#7638fa 90%)}
.social-row a.social-facebook,.social-row .social-facebook{background:#1877f2}
.social-row a.social-linkedin,.social-row .social-linkedin{background:#0a66c2}
.social-icon-svg{width:23px;height:23px;display:block}
.social-icon-fill{stroke:none}
.social-text-mark{font-weight:900}

/* Correct, stable payment marks — no font-dependent Apple symbol or placeholder abbreviations. */
.payment-marks{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.payment-marks .payment-logo{height:27px;min-width:43px;border:1px solid rgba(255,255,255,.34);border-radius:4px;background:#fff;color:#111;display:inline-flex;align-items:center;justify-content:center;padding:0 7px;line-height:1;white-space:nowrap;overflow:hidden}
.payment-visa{font-size:.72rem;font-weight:900;font-style:italic;letter-spacing:-.06em;color:#172b85!important}
.payment-mastercard{position:relative;width:43px;padding:0!important;background:#fff!important}
.payment-mastercard i{position:absolute;width:17px;height:17px;border-radius:50%;top:4px}
.payment-mastercard i:first-child{left:8px;background:#eb001b}
.payment-mastercard i:last-child{right:8px;background:#f79e1b;opacity:.92}
.payment-apple{font-size:.62rem;font-weight:800;letter-spacing:-.02em}
.apple-wordmark{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.payment-google{font-size:.62rem;font-weight:700;gap:3px}
.google-g-mark{font-weight:900;font-size:.78rem;color:#4285f4}
.payment-contactless{min-width:34px!important;width:34px;padding:0!important;background:transparent!important;color:#fff!important;border-radius:50%!important}
.payment-contactless svg{width:28px;height:22px;transform:translateX(-1px)}

@media(max-width:820px){
  .brand img{max-height:54px;max-width:150px}
  .feature-icon{width:40px;height:40px}
  .feature-icon .ui-icon{width:32px;height:32px}
  .payment-marks{max-width:100%}
}
@media(max-width:560px){
  .brand img{max-height:50px;max-width:138px}
  .feature-icon{width:38px;height:38px}
  .feature-icon .ui-icon{width:30px;height:30px}
  .scenario-icon .ui-icon{width:31px;height:31px}
  .footer-logo{max-width:195px;max-height:100px}
  .payment-marks .payment-logo{height:26px}
}

/* Lock & Leisure 1.0.5 - Google reviewer avatar rendering fix only.
   Keeps the existing review layout and typography unchanged. */
.review-author>a:first-child{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:block;
  border-radius:50%;
  overflow:hidden;
  line-height:0;
}
.review-author>img,
.review-author>a:first-child>img{
  width:38px;
  height:38px;
  max-width:none;
  min-width:38px;
  min-height:38px;
  aspect-ratio:1 / 1;
  border-radius:50%;
  object-fit:cover;
  object-position:50% 50%;
  display:block;
  flex:0 0 38px;
  image-rendering:auto;
}
@media(max-width:560px){
  .review-author>a:first-child,
  .review-author>img,
  .review-author>a:first-child>img{
    width:36px;
    height:36px;
    min-width:36px;
    min-height:36px;
    flex-basis:36px;
  }
}


/* Lock & Leisure 1.0.6 - review author and meta alignment refinement. */
.review-author-details{display:block}
@media(max-width:560px){
  .review-meta{gap:4px 10px}
  .review-source-link,.review-date{font-size:.71rem}
}

/* Lock & Leisure 1.0.7 - supplied social and trust assets. */
.social-row a,
.social-row .social-placeholder{
  width:42px;
  height:42px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent!important;
  overflow:hidden;
  line-height:0;
}
.social-row .social-placeholder{opacity:.72}
.social-icon-image{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
}
.whatsapp-float{
  background:transparent;
  overflow:hidden;
  padding:0;
}
.whatsapp-float .social-icon-image{
  width:52px;
  height:52px;
}
.trust-logos .trust-logo{
  display:block;
  width:auto;
  height:auto;
  max-width:120px;
  max-height:72px;
  object-fit:contain;
}
.trust-logos .trust-logo-marina{max-height:45px}
.trust-logos .trust-logo-ata{max-height:58px}
@media(max-width:560px){
  .social-row a,
  .social-row .social-placeholder{width:40px;height:40px}
  .trust-logos{flex-wrap:wrap}
}


/* Lock & Leisure 1.0.9 - automatic crop behaviour for split-section images. */
.split-section .split-image{isolation:isolate}

/* Lock & Leisure 1.0.10 - uploaded marina map + location cards below it. */
.dual-map-section{background:#fff}
.dual-map-figure{
  margin:0;
  width:100%;
  border:1px solid #d9d2c4;
  background:#f3eee4;
  overflow:hidden;
}
.dual-map-image{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  object-fit:contain;
}
.dual-map-location-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}
.dual-map-location-card{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  min-height:104px;
  padding:20px 22px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 8px 24px rgba(20,32,45,.04);
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.dual-map-location-card:hover{
  border-color:var(--gold);
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(20,32,45,.08);
}
.dual-map-location-number{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--gold);
  color:var(--navy);
  font-weight:900;
  line-height:1;
}
.dual-map-location-copy{
  min-width:0;
}
.dual-map-location-copy b{
  display:block;
  color:var(--ink);
  font-size:.92rem;
  line-height:1.25;
  text-transform:uppercase;
}
.dual-map-location-copy small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.4;
}
.dual-map-location-arrow{
  color:var(--gold-dark);
  font-size:1.35rem;
  font-weight:800;
}
@media(max-width:820px){
  .dual-map-location-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .dual-map-location-grid{gap:12px;margin-top:12px}
  .dual-map-location-card{grid-template-columns:36px minmax(0,1fr) auto;gap:11px;min-height:92px;padding:16px}
  .dual-map-location-number{width:34px;height:34px}
  .dual-map-location-copy b{font-size:.86rem}
  .dual-map-location-copy small{font-size:.78rem}
}

/* Lock & Leisure 1.0.12 — launch-safety / compliance refinements */
.contact-form .consent a{text-decoration:underline;text-underline-offset:2px;font-weight:700}

/* Lock & Leisure 1.0.13 — privacy, consent and legal document UI. */
.legal-document-section{background:#fff}.legal-shell{max-width:980px}.legal-document-section h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.02;margin:10px 0 18px;text-transform:uppercase;letter-spacing:-.035em}.legal-intro{max-width:800px;color:var(--muted);font-size:1.02rem}.legal-updated{margin:22px 0 34px;color:var(--muted);font-size:.82rem}.legal-content{max-width:900px}.legal-content h2{font-size:1.35rem;line-height:1.25;margin:42px 0 12px;color:var(--navy)}.legal-content h3{font-size:1.05rem;margin:28px 0 8px;color:var(--navy)}.legal-content p{color:#46515c;margin:0 0 16px}.legal-content ul,.legal-content ol{margin:0 0 20px;padding-left:22px;color:#46515c}.legal-content li{margin:7px 0}.legal-content a{text-decoration:underline;text-underline-offset:2px}.footer-cookie-settings{border:0;background:transparent;color:#aeb8c2;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.footer-cookie-settings:hover{color:#fff}
.consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:120;background:#fff;color:var(--ink);border:1px solid #dfddd6;box-shadow:0 18px 60px rgba(7,18,30,.22);border-radius:10px}.consent-banner[hidden]{display:none}.consent-banner-inner{max-width:1240px;margin:auto;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}.consent-banner strong{display:block;font-size:1rem}.consent-banner p{margin:4px 0 0;color:var(--muted);font-size:.88rem;max-width:760px}.consent-banner a{text-decoration:underline;text-underline-offset:2px}.consent-actions,.consent-dialog-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.consent-button{min-height:42px;border-radius:4px;padding:9px 14px;font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.035em;cursor:pointer}.consent-button.primary{background:var(--gold);border:1px solid var(--gold);color:var(--navy)}.consent-button.secondary{background:#fff;border:1px solid #d8d4c9;color:var(--navy)}.consent-dialog{border:0;padding:0;background:transparent;max-width:min(720px,calc(100% - 28px));width:100%}.consent-dialog::backdrop{background:rgba(8,20,32,.62);backdrop-filter:blur(3px)}.consent-dialog-card{background:#fff;border-radius:10px;box-shadow:0 24px 90px rgba(0,0,0,.35);padding:28px}.consent-dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:4px}.consent-dialog-head h2{margin:5px 0 0;font-size:1.8rem}.consent-close{border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;color:#53606c}.consent-category{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.consent-category strong{display:block}.consent-category p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.consent-category>input{position:absolute;opacity:0;pointer-events:none}.consent-switch{width:46px;height:25px;border-radius:999px;background:#c8cdd2;position:relative;transition:.2s}.consent-switch:after{content:"";position:absolute;width:19px;height:19px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:.2s}.consent-category>input:checked+.consent-switch{background:var(--gold-dark)}.consent-category>input:checked+.consent-switch:after{transform:translateX(21px)}.consent-category:focus-within .consent-switch{outline:3px solid rgba(232,179,49,.25)}.consent-always{font-size:.75rem;font-weight:800;color:#18794e;text-transform:uppercase}.consent-dialog-links{display:flex;gap:18px;margin:18px 0;font-size:.82rem}.consent-dialog-links a{text-decoration:underline;text-underline-offset:2px}.map-consent-placeholder{display:grid;place-items:center;min-height:420px;background:linear-gradient(135deg,#f3efe6,#e6edf1)}.map-consent-copy{text-align:center;max-width:520px;padding:36px}.map-consent-copy .map-consent-icon{width:38px;height:38px;margin:0 auto 12px;color:var(--gold-dark)}.map-consent-copy strong{display:block;font-size:1.15rem}.map-consent-copy p{color:var(--muted);margin:8px auto 18px}.map-embed-frame.is-loaded{background:#fff}.map-embed-frame.is-loaded iframe{width:100%;height:100%;border:0}
@media(max-width:820px){.consent-banner{left:10px;right:10px;bottom:10px}.consent-banner-inner{display:grid}.consent-actions{justify-content:stretch}.consent-actions .consent-button{flex:1 1 30%}.legal-content h2{margin-top:34px}}
@media(max-width:560px){.consent-dialog-card{padding:20px}.consent-actions,.consent-dialog-actions{display:grid;grid-template-columns:1fr}.consent-actions .consent-button,.consent-dialog-actions .consent-button{width:100%}.consent-category{gap:12px}.legal-document-section h1{font-size:2.2rem}.footer-cookie-settings{justify-self:start}}

/* Lock & Leisure 1.0.17 - footer trust badge spacing/proportion + centered steps cards. */
.reviews-badge{
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "logo title"
    "logo meta";
  column-gap:14px;
  row-gap:4px;
  align-items:center;
}
.reviews-badge-logo{
  grid-area:logo;
  display:block;
  width:clamp(132px,15vw,170px);
  height:auto;
  max-width:100%;
  object-fit:contain;
  align-self:center;
}
.reviews-badge span{
  grid-area:title;
  display:block;
  font-weight:800;
  line-height:1.15;
  align-self:end;
}
.reviews-badge small{
  grid-area:meta;
  display:block;
  margin-top:0;
  color:#f3c948;
  line-height:1.2;
  align-self:start;
}
.steps-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,260px));
  justify-content:center;
  max-width:1120px;
  margin-inline:auto;
}
.steps-grid article{height:100%}
@media(max-width:820px){
  .steps-grid{grid-template-columns:1fr 1fr;max-width:none}
}
@media(max-width:560px){
  .reviews-badge{column-gap:12px}
  .reviews-badge-logo{width:140px}
  .steps-grid{grid-template-columns:1fr}
}


/* Lock & Leisure 1.0.20 — final client polish. */
/* Prominent, page-specific 24/7 message without making the global header taller. */
.hero-large-luggage .eyebrow{
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:var(--gold);
  color:var(--navy);
  letter-spacing:.08em;
  line-height:1.2;
}

/* Exactly five process cards: 3 balanced on row one, 2 centered on row two. */
@media(min-width:821px){
  .steps-grid.steps-count-5{
    grid-template-columns:repeat(6,minmax(0,1fr));
    max-width:1120px;
    margin-inline:auto;
  }
  .steps-grid.steps-count-5 article:nth-child(1){grid-column:1/3}
  .steps-grid.steps-count-5 article:nth-child(2){grid-column:3/5}
  .steps-grid.steps-count-5 article:nth-child(3){grid-column:5/7}
  .steps-grid.steps-count-5 article:nth-child(4){grid-column:2/4}
  .steps-grid.steps-count-5 article:nth-child(5){grid-column:4/6}
}
@media(max-width:820px){
  .steps-grid.steps-count-5{grid-template-columns:1fr 1fr;max-width:none}
}
@media(max-width:560px){
  .steps-grid.steps-count-5{grid-template-columns:1fr}
}

/* Desktop brand mark ~22% larger; tablet/mobile stays compact. */
@media(min-width:1051px){
  .header-inner{grid-template-columns:245px 1fr auto}
  .brand img{max-width:210px;max-height:67px}
}
@media(min-width:821px) and (max-width:1050px){
  .brand img{max-width:182px;max-height:62px}
}

/* Compact Google review badge; official Marina/ATA trust marks receive more visual weight. */
.reviews-badge{
  grid-template-columns:64px minmax(0,1fr);
  column-gap:12px;
  row-gap:2px;
  padding-bottom:18px;
  margin-bottom:20px;
}
.reviews-badge-logo{width:64px;max-width:64px}
.reviews-badge span{font-size:.92rem;line-height:1.1}
.reviews-badge small{font-size:.78rem;line-height:1.2}
.trust-logos{gap:16px;align-items:center}
.trust-logos .trust-logo{max-width:145px;max-height:82px}
.trust-logos .trust-logo-marina{max-width:145px;max-height:58px}
.trust-logos .trust-logo-ata{max-width:145px;max-height:72px}
@media(max-width:560px){
  .reviews-badge{grid-template-columns:56px minmax(0,1fr)}
  .reviews-badge-logo{width:56px;max-width:56px}
  .trust-logos .trust-logo-marina{max-width:150px;max-height:60px}
  .trust-logos .trust-logo-ata{max-width:150px;max-height:74px}
}

.faq-view-all{margin-top:30px}
