/* ===== v5 — strict system: one radius (4px), one alignment (left), one type scale ===== */
:root{--r:4px;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--sp:112px;
 --fs-h1:clamp(40px,5.2vw,68px);--fs-h2:clamp(30px,3.2vw,44px);--fs-h3:clamp(20px,1.7vw,24px);--fs-b:16px;--fs-s:13px}
@media(max-width:767px){:root{--sp:72px}}
/* type scale */
h1,.thero h1,.phead h1{font-family:var(--serif)!important;font-weight:400!important;font-size:var(--fs-h1)!important;line-height:1.05!important;letter-spacing:0!important}
.vhero h1{font-size:clamp(42px,6vw,84px)!important}
h2,.shead h2,.h2,.sintro h2,.lx-offer .otext h2,.tmain .sec h2,.why-item h2{font-family:var(--serif)!important;font-weight:500!important;font-size:var(--fs-h2)!important;line-height:1.1!important;letter-spacing:0!important;margin:0!important}
h3,.hbody h3,.why-item h3,.dcard h3,.scard h3{font-family:var(--serif)!important;font-weight:500!important;font-size:var(--fs-h3)!important;line-height:1.2!important;letter-spacing:0!important}
body,p{font-size:var(--fs-b)}
.hbody p,.why-item p,.feat small{font-size:15px}
/* no decorative flourishes */
.lx-eye,.lx-eye::before,.lx-eye::after,.shead::after,.shead .lx-eye::after,.lx-head .lx-eye::after{display:none!important}
.tmain .sec h2::after,.tmain .sec h2::before,.cloud-deco{display:none!important}
.tmain .sec h2{padding-bottom:0!important;margin-bottom:var(--s2)!important}
/* one alignment rule: left */
.shead,.lx-head{display:flex!important;flex-direction:row!important;align-items:flex-end!important;justify-content:space-between!important;text-align:left!important;gap:var(--s3)!important;margin-bottom:var(--s4)!important}
.shead h2,.lx-head h2{text-align:left!important;width:auto!important}
.shead .more,.sintro .more,.lx-link{margin:0!important;flex:none;font-size:var(--fs-s)!important;letter-spacing:.12em!important}
.sintro{text-align:left!important}
.lx-cta,.lx-cta-in{text-align:left!important}
.lx-cta-in{max-width:1280px}.lx-cta h2,.lx-cta p{max-width:720px;margin-left:0!important}
.lx-cta p{margin:var(--s3) 0 var(--s4)!important}
.lx-cta .vh-btns{justify-content:flex-start!important}
.why-item{text-align:left!important;padding:0!important}
.why-item p{margin:0!important}
.why-item h3{margin-bottom:var(--s1)!important}
.why-ic{display:none!important}
.why-grid{border-top:1px solid var(--line);padding-top:var(--s4)}
.lx-intro h2{margin-bottom:var(--s3)!important}
.lx-offer .otext h2{margin-bottom:var(--s2)!important}
/* spacing rhythm */
.block,.lx-sec,.lx-intro,.lx-contact{padding-top:var(--sp)!important}
.lx-why{margin-top:var(--sp)!important;padding-bottom:var(--sp)!important}
.lx-cta{margin-top:var(--sp)!important;padding:var(--sp) 0!important}
.lx-why+.block,.lx-why+section{padding-top:var(--sp)!important}
.foot{margin-top:var(--sp)!important}
.hbody{padding-top:var(--s2)!important}
.hbody h3{margin-bottom:var(--s1)!important}
.hbody .btn{margin-top:var(--s2)!important}
/* gallery: arrows below the carousel, never over text */
.gal .shead{position:static!important}
.gal .arrows{position:static!important;display:flex!important;justify-content:flex-start;gap:var(--s1);margin-top:var(--s3)}
/* ONE corner radius everywhere */
.dimg,.dimg img,.hcard .dimg,.dcard .dimg,.scard .dimg,.style-tile,.gslide,.gslide img,.gcar img,.tcar,.tcar figure,.tcar img,.offer,.lx-offer .offer,.oimg,.card,.card.sticky,.prices,.sec,.tmain .sec,.frame,.frame iframe,.media,.thero,.phead,.stories,.feats,.search,.hsearch .search,.dd,.mega,.tabbar,.tabbar a,.chips a,.ddt,.lang a,.badge,.price,.disc,.hcard .price,.btn,.btn.sm,.wa-float,.brand img,.foot-soc .soc,.topbar .soc,.fic,.cat,.cic,.gprev,.gnext,.tprev,.tnext,.related .dimg,input,select,textarea{border-radius:var(--r)!important}
.brand img{border-radius:50%!important}
.wa-float{border-radius:50%!important}
/* buttons: one shape, two styles */
.btn{padding:14px 26px!important;font-size:12px!important;letter-spacing:.14em!important;font-weight:600!important;border:1px solid transparent}
.btn-line{border-color:rgba(255,255,255,.9)!important}
.hcta{padding:11px 20px!important}
/* fewer pills: tags become small flat labels */
.hcard .price,.dcard .price,.scard .price{padding:5px 10px!important;font-size:13.5px!important;font-weight:600!important;background:#fff!important;color:var(--ink)!important}
.hcard .price small{font-size:11px!important}
.dcard .badge,.scard .badge{background:transparent!important;color:#fff!important;padding:0!important;font-size:11.5px!important;letter-spacing:.14em!important;text-transform:uppercase;font-weight:600!important;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.disc{padding:5px 10px!important;font-size:12.5px!important}
.chips a{padding:8px 14px!important}
.chips a .ic,.chips a svg{display:none!important}
/* tiles: no gratuitous arrow circles */
.st-go{display:none!important}
.st-name{font-size:var(--fs-h3)!important;left:20px!important;bottom:18px!important}
/* contact strip: plain icons */
.fic{border:0!important;background:transparent!important;width:auto!important;height:auto!important;color:var(--o-txt)!important}
.feat:hover .fic{background:transparent!important;color:var(--ink)!important}
.feat b{font-size:var(--fs-h3)!important;font-weight:500!important}
/* carousels */
.gprev,.gnext{width:44px!important;height:44px!important}
@media(max-width:767px){
 .shead,.lx-head{flex-direction:column!important;align-items:flex-start!important;gap:var(--s1)!important;margin-bottom:var(--s3)!important}
 .lx-cta .vh-btns .btn{width:100%}
 .why-grid{gap:var(--s4)!important}
}
/* consistent left edge for every section */
.bleed{max-width:1280px!important;margin-left:auto!important;margin-right:auto!important;padding-left:32px!important;padding-right:32px!important}
.bleed .shead,.bleed .hscroll{margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
@media(max-width:767px){.bleed{padding-left:18px!important;padding-right:18px!important}.bleed .hscroll{margin-right:-18px!important;padding-right:18px!important}}
.related.bleed{max-width:none!important;padding-left:max(32px,calc((100% - 1216px)/2))!important;padding-right:max(32px,calc((100% - 1216px)/2))!important}
.tmain .list>li{font-size:15px!important;line-height:1.65!important;padding-left:18px!important}
.tmain .list>li::before{width:5px!important;height:5px!important;border-radius:50%!important;background:var(--o)!important;top:.7em!important;left:2px!important;-webkit-mask:none!important;mask:none!important;content:""!important}
.tmain .list>li small,.tmain .list>li *{font-size:inherit}
