:root{--ink:#0e1116;--ink2:#1b2029;--red:#d9281d;--redd:#b01d14;--grey:#f2f3f5;--line:#dfe2e7;--mut:#5a6270;--fd:'Chakra Petch',system-ui,sans-serif;--fb:'Hanken Grotesk',system-ui,sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font:400 17px/1.7 var(--fb);color:var(--ink);background:#fff;overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0}button{font:inherit}
.wrap{width:min(1240px,92%);margin:auto}.narrow{width:min(800px,92%)}.sr{position:absolute;left:-9999px}
h1,h2,h3{font-family:var(--fd);font-weight:700;line-height:1.08;letter-spacing:-.01em}h1{font-size:clamp(2.6rem,6vw,5rem)}h2{font-size:clamp(1.9rem,3.8vw,3rem);margin-bottom:1rem}h3{font-size:1.3rem}em{font-style:normal;color:var(--red)}.hero em,.phero em{color:#ff6a5e}
.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.16em;font:600 .78rem var(--fb);color:var(--red);margin-bottom:1rem}.eyebrow::before{content:"";width:26px;height:10px;background:repeating-linear-gradient(115deg,var(--red) 0 4px,transparent 4px 8px)}.hero .eyebrow,.dark .eyebrow{color:#ff6a5e}.hero .eyebrow::before,.dark .eyebrow::before{background:repeating-linear-gradient(115deg,#ff6a5e 0 4px,transparent 4px 8px)}
.sec{padding:96px 0}.grey{background:var(--grey)}.dark{background:var(--ink);color:#fff}.two{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:40px}.head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}.head h2{margin:0}
.box{background:#fff;color:var(--ink);padding:36px;border-top:5px solid var(--red)}
.topbar{background:var(--ink);color:#b6bcc8;font-size:.8rem;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hdr{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line)}.bar{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:20px}
.logo{font:700 1.45rem var(--fd);display:flex;gap:10px;align-items:center;text-transform:uppercase;letter-spacing:.02em}.logo svg{width:36px;color:var(--red)}
.menu{display:flex;align-items:center;gap:28px}.menu ul{display:flex;gap:24px}.menu li{position:relative}
.menu a:not(.btn){font:600 .88rem var(--fd);text-transform:uppercase;letter-spacing:.08em;position:relative}.menu li>a::after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:3px;background:var(--red);transform:scaleX(0) skewX(-30deg);transform-origin:left;transition:transform .35s}.menu li>a:hover::after,.menu a.on::after{transform:scaleX(1) skewX(-30deg)}.menu a.on{color:var(--red)}
.tpl{display:inline-flex;align-items:center;white-space:nowrap}.tpl small{background:var(--ink);color:#fff;font-size:.55rem;padding:2px 7px;margin-left:5px;letter-spacing:.08em}
.sub ul{position:absolute;top:100%;left:-14px;min-width:200px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--red);padding:10px 18px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.3s;margin-top:14px;display:block;box-shadow:0 24px 40px -24px rgba(14,17,22,.5)}.sub:hover ul,.sub:focus-within ul{opacity:1;visibility:visible;transform:none}.sub ul li{padding:5px 0}.sub ul a{text-transform:none!important;letter-spacing:0!important;font:600 .95rem var(--fb)!important}
.btn{display:inline-flex;gap:10px;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--red);color:#fff;padding:15px 38px;font:700 .88rem var(--fd);text-transform:uppercase;letter-spacing:.1em;border:0;cursor:pointer;z-index:0;clip-path:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%);transition:color .3s}.btn::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateX(-105%) skewX(-20deg);transition:transform .45s;z-index:-1}.btn:hover::before{transform:translateX(0) skewX(-20deg);width:130%;left:-15%}.btn svg{width:18px;transition:transform .3s}.btn:hover svg{transform:translateX(5px)}.btn.sm{padding:10px 24px;font-size:.78rem}.btn.light{background:#fff;color:var(--ink)}.hero .btn::before,.dark .btn::before{background:#fff}.hero .btn:hover,.dark .btn:hover{color:var(--ink)}
.lnk{font:700 .84rem var(--fd);text-transform:uppercase;letter-spacing:.1em;display:inline-flex;gap:8px;align-items:center;padding-bottom:4px;background:linear-gradient(var(--red),var(--red)) no-repeat 0 100%/100% 3px;transition:background-size .4s}.lnk:hover{background-size:0 3px;background-position:100% 100%}.lnk svg,.more svg{width:18px;transition:transform .3s}.lnk:hover svg,.sv:hover .more svg{transform:translateX(6px)}.lt{color:#fff}
.burger{display:none;background:#fff;border:2px solid var(--ink);width:46px;height:46px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;align-items:center}.burger span{width:20px;height:2px;background:var(--ink);transition:transform .3s}.burger[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.burger[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.hero,.phero{position:relative;color:#fff;overflow:hidden;background:var(--ink)}.hero>img,.phero>img{position:absolute;inset:0;z-index:0}.hero::before,.phero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,17,22,.92),rgba(14,17,22,.55) 55%,rgba(14,17,22,.15))}.hero{padding:120px 0 170px}.hc,.phero .wrap{position:relative;z-index:2}.hero h1{max-width:820px}.lead{font-size:1.2rem;color:#d3d8e2;margin:22px 0 36px;max-width:580px}.acts{display:flex;gap:30px;align-items:center;flex-wrap:wrap}
.phero{padding:90px 0 140px}.phero p:not(.crumb){margin-top:14px;color:#d3d8e2;max-width:540px}.crumb{font:600 .78rem var(--fd);text-transform:uppercase;letter-spacing:.14em;margin-bottom:16px;color:#ff6a5e}.crumb a{text-decoration:underline}
.bkw{position:relative;z-index:5;margin-top:-84px}.bk{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:16px;align-items:end;background:#fff;padding:28px 32px;border-top:5px solid var(--red);box-shadow:0 30px 60px -30px rgba(14,17,22,.55)}.bk label{display:grid;gap:5px;font:600 .72rem var(--fd);text-transform:uppercase;letter-spacing:.1em;color:var(--mut)}
.trust{padding:56px 0 8px}.trs{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.tr{display:flex;gap:14px;align-items:center}.tr b{display:block;font:700 1rem var(--fd)}.tr small{color:var(--mut);font-size:.85rem;line-height:1.35;display:block}
.ib{display:grid;place-items:center;flex:none;width:54px;height:54px;background:var(--ink);color:#fff;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);transition:background .4s}.ib svg{width:26px}
.ph{overflow:hidden;background:var(--grey)}.ph img,.vi img,.ct img{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.ph:hover img,.vc:hover img,.ct:hover img,.bc:hover img,.tm:hover img{transform:scale(1.07)}
.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.ct{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;color:#fff;background:var(--ink);clip-path:polygon(0 0,100% 0,100% calc(100% - 28px),calc(100% - 28px) 100%,0 100%)}.ct::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 35%,rgba(14,17,22,.88))}.ct img{position:absolute;inset:0}.ct span{position:absolute;left:24px;bottom:20px;z-index:2}.ct b{display:block;font:700 1.6rem var(--fd)}.ct small{color:#ff8c82;font-weight:600}.ct::after{content:"";position:absolute;left:0;bottom:0;height:5px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s;z-index:3}.ct:hover::after{transform:scaleX(1)}
.vc{background:#fff;border:1px solid var(--line);transition:transform .4s,box-shadow .4s}.vc:hover{transform:translateY(-8px);box-shadow:0 30px 44px -30px rgba(14,17,22,.55)}.vi{display:block;position:relative;aspect-ratio:16/10;overflow:hidden}.vt{position:absolute;left:0;top:18px;background:var(--red);color:#fff;font:700 .72rem var(--fd);text-transform:uppercase;letter-spacing:.1em;padding:5px 18px 5px 14px;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%)}.vb{padding:22px 24px 24px}.vb h3 a:hover{color:var(--red)}.sp{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:14px 0 18px;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:.88rem;color:var(--mut)}.sp li{display:flex;gap:8px;align-items:center}.sp svg{width:18px;color:var(--red)}.vp{display:flex;justify-content:space-between;align-items:center;gap:12px}.vp b{font:700 1.7rem var(--fd);color:var(--ink)}.vp span{color:var(--mut);font-size:.85rem}
.ticks{margin:20px 0 28px}.ticks li{padding:5px 0 5px 32px;position:relative}.ticks li::before{content:"";position:absolute;left:0;top:11px;width:16px;height:12px;background:var(--red);clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%)}.ticks.cols{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.mutl{color:#c3c9d4}
.sv{display:block;position:relative;background:#fff;border:1px solid var(--line);padding:34px;transition:transform .4s,box-shadow .4s}.sv::before{content:"";position:absolute;left:0;bottom:0;height:5px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s}.sv:hover::before{transform:scaleX(1)}.sv:hover{transform:translateY(-6px);box-shadow:0 28px 40px -30px rgba(14,17,22,.5)}.sv:hover .ib{background:var(--red)}.sv .ib{margin-bottom:22px}.sv p{color:var(--mut);margin:10px 0 18px;font-size:.96rem}.more{display:flex;gap:8px;align-items:center;font:700 .82rem var(--fd);text-transform:uppercase;letter-spacing:.1em;color:var(--red)}
.band{position:relative;background:var(--ink);color:#fff;padding:64px 0;overflow:hidden}.band::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.04) 0 2px,transparent 2px 26px)}.band::after{content:"";position:absolute;right:-60px;top:0;bottom:0;width:260px;background:var(--red);transform:skewX(-20deg);opacity:.9}.band .wrap{position:relative;z-index:1}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}.stats b{display:block;font:700 3.4rem/1.1 var(--fd)}.stats div{color:#c3c9d4}.stats div:nth-child(4){color:#fff}
.step{position:relative;padding:30px 28px;background:#fff;border:1px solid var(--line);transition:transform .4s}.step:hover{transform:translateY(-6px)}.step b{font:700 3.6rem/1 var(--fd);color:var(--red);opacity:.9}.step h3{margin:10px 0 8px}.step p,.val p{color:var(--mut);font-size:.96rem}
.rev{background:#fff;border:1px solid var(--line);border-left:5px solid var(--red);padding:32px;transition:transform .4s}.rev:hover{transform:translateY(-6px)}.stars{display:inline-flex;color:#f2a900}.stars svg{width:18px}.rev blockquote{margin:14px 0 22px}.rev figcaption{display:flex;gap:14px;align-items:center;font-size:.85rem;color:var(--mut)}.rev figcaption img{width:52px;height:52px;border-radius:50%}.rev b{color:var(--ink)}
.bc{display:block}.bc .ph{aspect-ratio:16/10;margin-bottom:16px}.bc span,.tag{font:700 .74rem var(--fd);text-transform:uppercase;letter-spacing:.12em;color:var(--red)}.bc h3{margin-top:6px;font-size:1.4rem;background:linear-gradient(var(--red),var(--red)) no-repeat 0 100%/0 3px;transition:background-size .4s;display:inline}.bc:hover h3{background-size:100% 3px}
.form{display:grid;gap:16px}.f2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form label{display:grid;gap:6px;font:600 .72rem var(--fd);text-transform:uppercase;letter-spacing:.1em;color:var(--mut)}select,input,textarea{font:500 1rem var(--fb);padding:13px 14px;border:1px solid var(--line);background:#fff;color:var(--ink);width:100%;border-radius:0;text-transform:none;letter-spacing:0}select:focus,input:focus,textarea:focus{outline:3px solid var(--red);border-color:var(--ink)}
details{border:1px solid var(--line);padding:20px 26px;margin-bottom:14px;background:#fff}summary{cursor:pointer;font:700 1.15rem var(--fd);list-style:none;display:flex;justify-content:space-between;gap:16px}summary::after{content:"+";color:var(--red);font-size:1.7rem;line-height:1;transition:transform .3s}details[open]{border-left:5px solid var(--red)}details[open] summary::after{transform:rotate(45deg)}details p{color:var(--mut);margin-top:10px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding:52px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.row.rv .ph{order:2}.row .ph{aspect-ratio:4/3;clip-path:polygon(0 0,100% 0,100% calc(100% - 36px),calc(100% - 36px) 100%,0 100%)}.num{font:700 1rem var(--fd);color:var(--red);letter-spacing:.14em}.row h2{margin:4px 0 12px}.row p{color:var(--mut)}
.tm .ph{aspect-ratio:1;margin-bottom:16px}.tm span{color:var(--red);font-weight:600;font-size:.88rem}.val .ib{margin-bottom:16px}
.tl{border-left:3px solid var(--line);padding-left:32px;margin-top:36px}.tl li{position:relative;padding-bottom:28px}.tl li::before{content:"";position:absolute;left:-42px;top:10px;width:16px;height:12px;background:var(--red);clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%);box-shadow:0 0 0 5px var(--grey)}.tl b{font:700 1.8rem var(--fd)}.tl p{color:var(--mut)}
.sorting{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.sorting select{width:auto}.chips{display:flex;gap:10px;flex-wrap:wrap}.chipc{padding:10px 24px;border:2px solid var(--ink);background:#fff;font:700 .8rem var(--fd);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:.3s;color:var(--ink)}.chipc:hover,.chipc.on{background:var(--red);border-color:var(--red);color:#fff}.g0{margin-top:30px}
.pag{display:flex;gap:8px;justify-content:center;margin-top:56px}.pag a{min-width:48px;height:48px;padding:0 16px;display:grid;place-items:center;border:2px solid var(--ink);font:700 .9rem var(--fd);transition:.3s}.pag a:hover,.pag a.on{background:var(--red);border-color:var(--red);color:#fff}
.lgrid{display:grid;grid-template-columns:1fr 380px;gap:52px;align-items:start}.lgrid h3{margin:38px 0 14px;font-size:1.6rem}.txt{color:var(--mut)}.main{aspect-ratio:16/10;margin-bottom:14px}.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.thumbs .ph{aspect-ratio:16/10;cursor:pointer}.titl{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin:32px 0 20px}.titl h2{margin:4px 0 0}.price{font:700 1.2rem var(--fd);color:var(--mut)}.price b{font-size:2.6rem;color:var(--red)}
.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:8px}.spc{background:var(--grey);padding:20px;text-align:center;display:grid;justify-items:center;gap:2px;transition:background .3s,color .3s}.spc:hover{background:var(--ink);color:#fff}.spc svg{width:28px;color:var(--red);margin-bottom:6px}.spc b{font:700 1.2rem var(--fd)}.spc small{color:var(--mut)}.spc:hover small{color:#b6bcc8}
.rates{width:100%;border-collapse:collapse}.rates th,.rates td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line)}.rates th{background:var(--ink);color:#fff;font:700 .78rem var(--fd);text-transform:uppercase;letter-spacing:.1em}.rates td:not(:first-child){font-weight:700}
.side{position:sticky;top:110px}.side h3{margin:0 0 16px!important;font-size:1.5rem!important}
.info p{margin-bottom:12px}.info b{display:block;font:700 .74rem var(--fd);text-transform:uppercase;letter-spacing:.14em;color:var(--red)}.hours{width:100%;margin-top:18px;border-collapse:collapse}.hours th,.hours td{padding:12px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:600}.hours td{text-align:right;color:var(--mut);font-weight:500}.mapsec iframe{display:block;width:100%;height:420px;border:0;filter:grayscale(.5)}
.prose h2{margin-top:2rem;font-size:1.9rem}.prose p{margin-bottom:1rem;color:var(--mut)}.author{display:grid;grid-template-columns:84px 1fr;gap:20px;align-items:center;margin-top:36px;padding:22px}.author .ph{width:84px;height:84px;border-radius:50%}.author p{margin:4px 0 0}
.ftr{background:var(--ink);color:#aab1be;padding:80px 0 0;font-size:.95rem;border-top:6px solid var(--red)}.ftr .logo{color:#fff;margin-bottom:14px}.fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:44px}.ftr h4{color:#fff;font:700 1rem var(--fd);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}.ftr a:not(.logo){display:block;padding:3px 0;transition:color .3s,padding .3s}.ftr a:not(.logo):hover{color:#fff;padding-left:8px}.copy{margin-top:56px;padding:24px 0;border-top:1px solid rgba(255,255,255,.12);font-size:.85rem}
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.js .reveal.in{opacity:1;transform:none}
@media(max-width:1000px){.two,.row,.lgrid{grid-template-columns:1fr;gap:40px}.row.rv .ph{order:0}.grid3,.cats{grid-template-columns:1fr 1fr}.grid4,.stats,.trs{grid-template-columns:1fr 1fr}.bk{grid-template-columns:1fr 1fr}.fgrid{grid-template-columns:1fr 1fr}.sec{padding:68px 0}.hero{padding:80px 0 140px}.side{position:static}.band::after{display:none}.specs{grid-template-columns:1fr 1fr}
.js .burger{display:flex}.js .menu{position:fixed;inset:auto 4% auto;top:124px;max-height:calc(100vh - 140px);background:#fff;border:1px solid var(--line);border-top:5px solid var(--red);flex-direction:column;align-items:flex-start;padding:26px;gap:20px;overflow:auto;transform:translateY(-12px);opacity:0;visibility:hidden;transition:.3s}.js .menu.open{transform:none;opacity:1;visibility:visible}.menu ul{flex-direction:column;gap:12px}.menu a:not(.btn){font-size:1rem}.sub ul{position:static;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;padding:6px 0 0 14px;margin:0}
.no-js .bar{flex-wrap:wrap;padding:10px 0}.no-js .menu,.no-js .menu ul{flex-wrap:wrap;gap:12px}}
@media(max-width:640px){.grid3,.grid4,.cats,.fgrid,.f2,.bk,.trs,.ticks.cols{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.topbar .wrap span:last-child{display:none}.box,.bk{padding:24px}.author{grid-template-columns:1fr}.mapsec iframe{height:320px}.hero{padding:70px 0 130px}.sp{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}}
