/* Cal Batlle 2026 — capa mínima sobre Elementor (colors i tipografia viuen al Kit d'Elementor) */
:root{
  --cb-slate:#262B28; --cb-slate-2:#353C37; --cb-iron:#88674F; --cb-iron-d:#6F523F;
  --cb-lime:#EEEDE7; --cb-moss:#6B7556; --cb-white:#fff;
  --cb-head-h:88px; --cb-ease:cubic-bezier(.22,.61,.25,1);
}
@media (max-width:1024px){:root{--cb-head-h:72px}}

html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,.elementor-heading-title{text-wrap:balance}
p{text-wrap:pretty}
.site-main,.page-content{margin:0}
.cb-skip{position:absolute;left:-9999px;top:8px;z-index:10000;background:var(--cb-white);color:var(--cb-slate);padding:10px 16px;border-radius:2px}
.cb-skip:focus{left:8px}
:focus-visible{outline:2px solid var(--cb-iron);outline-offset:3px}
.cb-dark :focus-visible,.cb-site-header :focus-visible,.cb-site-footer :focus-visible{outline-color:#fff}

/* ---------- Capçalera ---------- */
.cb-site-header{position:fixed;inset:0 0 auto 0;z-index:999;transition:background-color .5s var(--cb-ease),box-shadow .5s var(--cb-ease),transform .5s var(--cb-ease)}
body:not(.cb-has-hero) .cb-site-header,.cb-site-header.is-solid{background:var(--cb-slate);box-shadow:0 1px 0 rgba(255,255,255,.06)}
body.cb-has-hero .cb-site-header:not(.is-solid){background:linear-gradient(to bottom,rgba(20,24,21,.55),rgba(20,24,21,0))}
body:not(.cb-has-hero) #content,body:not(.cb-has-hero) .site-main{padding-top:var(--cb-head-h)}
body.admin-bar .cb-site-header{top:32px}
@media (max-width:782px){body.admin-bar .cb-site-header{top:46px}}
.cb-site-header.is-hidden{transform:translateY(-100%)}
.cb-header{min-height:var(--cb-head-h)}
.cb-logo img{height:52px;width:auto;display:block}
@media (max-width:1024px){.cb-logo img{height:40px}}

.cb-menu{list-style:none;margin:0;padding:0;display:flex;gap:clamp(18px,2.2vw,34px);align-items:center}
.cb-menu a{color:#fff;text-decoration:none;font-family:"Barlow Condensed",sans-serif;font-weight:500;font-size:19px;letter-spacing:.02em;position:relative;padding:6px 0}
.cb-menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--cb-ease)}
.cb-menu a:hover::after,.cb-menu .current-menu-item>a::after{transform:scaleX(1)}
.cb-nav{display:flex;align-items:center;gap:28px}
.cb-lang{list-style:none;margin:0;padding:0;display:flex;gap:10px;font-family:"Barlow Condensed",sans-serif;font-size:15px;letter-spacing:.06em}
.cb-lang a,.cb-lang span{color:rgba(255,255,255,.62);text-decoration:none;padding:4px 2px}
.cb-lang a:hover{color:#fff}
.cb-lang span[aria-current]{color:#fff;border-bottom:1px solid var(--cb-iron)}
.cb-burger{display:none;background:none;border:0;color:#fff;cursor:pointer;align-items:center;gap:10px;padding:10px 0;font-family:"Barlow Condensed",sans-serif;font-size:18px}
.cb-burger:hover,.cb-burger:focus{background:none;color:#fff}
.cb-burger__lines{width:26px;height:10px;position:relative;display:inline-block}
.cb-burger__lines::before,.cb-burger__lines::after{content:"";position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .4s var(--cb-ease),top .4s var(--cb-ease)}
.cb-burger__lines::before{top:0}.cb-burger__lines::after{top:8px}
.cb-nav-open .cb-burger__lines::before{top:4px;transform:rotate(45deg)}
.cb-nav-open .cb-burger__lines::after{top:4px;transform:rotate(-45deg)}

@media (max-width:1024px){
  .cb-burger{display:inline-flex;position:relative;z-index:2}
  .cb-nav{position:fixed;inset:0;background:var(--cb-slate);flex-direction:column;justify-content:center;align-items:flex-start;gap:40px;padding:calc(var(--cb-head-h) + 24px) 28px 40px;opacity:0;visibility:hidden;transition:opacity .45s var(--cb-ease),visibility .45s}
  .cb-nav-open .cb-nav{opacity:1;visibility:visible}
  .cb-menu{flex-direction:column;align-items:flex-start;gap:6px}
  .cb-menu a{font-size:clamp(34px,9vw,52px);font-weight:500;line-height:1.15}
  .cb-menu li{opacity:0;transform:translateY(14px);transition:opacity .5s var(--cb-ease),transform .5s var(--cb-ease)}
  .cb-nav-open .cb-menu li{opacity:1;transform:none}
  .cb-nav-open .cb-menu li:nth-child(2){transition-delay:.04s}.cb-nav-open .cb-menu li:nth-child(3){transition-delay:.08s}
  .cb-nav-open .cb-menu li:nth-child(4){transition-delay:.12s}.cb-nav-open .cb-menu li:nth-child(5){transition-delay:.16s}
  .cb-nav-open .cb-menu li:nth-child(6){transition-delay:.2s}.cb-nav-open .cb-menu li:nth-child(7){transition-delay:.24s}
  .cb-lang{font-size:18px;gap:18px}
  .cb-header-cta{display:none!important}
  html.cb-nav-open,html.cb-nav-open body{overflow:hidden}
}
@media (min-width:1025px){.cb-nav__lang{margin-left:6px;padding-left:22px;border-left:1px solid rgba(255,255,255,.2)}}

/* ---------- Hero ---------- */
.cb-hero{position:relative;overflow:hidden;isolation:isolate}
.cb-hero-media{position:absolute!important;inset:0;width:100%!important;height:100%;margin:0!important;z-index:-1}
.cb-hero-media .elementor-widget-container,.cb-hero-media img{width:100%;height:100%}
.cb-hero-media img{object-fit:cover;object-position:var(--cb-focus,50% 50%);transform:translate3d(var(--mx,0),var(--my,0),0) scale(var(--s,1.06));transition:transform 2.8s var(--cb-ease);will-change:transform;max-width:none!important}
.cb-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,21,.38) 0%,rgba(20,24,21,0) 26%,rgba(20,24,21,.18) 50%,rgba(20,24,21,.80) 100%),linear-gradient(90deg,rgba(20,24,21,.50),rgba(20,24,21,0) 70%);pointer-events:none}
.cb-band .cb-hero-media::after{background:linear-gradient(90deg,rgba(20,24,21,.78),rgba(20,24,21,.35) 70%,rgba(20,24,21,.2))}
.cb-hero h1,.cb-hero p{text-shadow:0 2px 28px rgba(10,12,11,.35)}
.cb-js .cb-hero .cb-hero-inner>*{opacity:0;transform:translateY(22px);transition:opacity 1.1s var(--cb-ease),transform 1.1s var(--cb-ease)}
.cb-ready .cb-hero .cb-hero-inner>*{opacity:1;transform:none}
.cb-ready .cb-hero .cb-hero-inner>*:nth-child(2){transition-delay:.15s}
.cb-ready .cb-hero .cb-hero-inner>*:nth-child(3){transition-delay:.3s}
.cb-ready .cb-hero .cb-hero-inner>*:nth-child(4){transition-delay:.45s}
.cb-scroll-cue{position:absolute!important;right:clamp(16px,4vw,56px);bottom:clamp(24px,5vh,48px);width:auto!important}
.cb-scroll-cue .elementor-heading-title{writing-mode:vertical-rl;letter-spacing:.12em}
.cb-scroll-cue .elementor-heading-title::after{content:"";display:block;width:1px;height:56px;margin:14px auto 0;background:currentColor;transform-origin:top;animation:cbCue 2.4s var(--cb-ease) infinite}
@keyframes cbCue{0%{transform:scaleY(0)}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media (max-width:767px){.cb-scroll-cue{display:none}}

/* ---------- Imatges: porticó (revelat), paral·laxi, flotants ---------- */
.cb-js .cb-shutter img{clip-path:inset(0 50% 0 50%);transition:clip-path 1.5s var(--cb-ease)}
.cb-js .cb-shutter.is-in img{clip-path:inset(0 0 0 0)}
.cb-par .elementor-widget-container{overflow:hidden}
.cb-par img{transform:translate3d(0,var(--py,0),0) scale(1.14);will-change:transform}
.cb-cover .elementor-widget-container,.cb-cover img{width:100%;height:100%}
.cb-cover img{object-fit:cover}
.cb-float{transition:transform 1.2s var(--cb-ease);will-change:transform}
.cb-float img{box-shadow:0 30px 60px -30px rgba(20,24,21,.55)}

/* Proporcions fixes per evitar CLS */
.cb-r45 img{aspect-ratio:4/5;object-fit:cover;width:100%}
.cb-r32 img{aspect-ratio:3/2;object-fit:cover;width:100%}
.cb-r169 img{aspect-ratio:16/9;object-fit:cover;width:100%}
.cb-r11 img{aspect-ratio:1/1;object-fit:cover;width:100%}

/* Targetes d'espais (Image Box nadiu) */
.cb-space .elementor-image-box-img{overflow:hidden;width:100%!important;margin-bottom:18px!important}
.cb-space .elementor-image-box-img img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform 1.4s var(--cb-ease)}
.cb-space:hover .elementor-image-box-img img{transform:scale(1.05)}
.cb-space a{color:inherit;text-decoration:none}

/* Galeria nadiua */
.cb-gallery .gallery{margin:0!important}
.cb-gallery .gallery-item{padding:0 6px 12px!important;margin:0!important}
.cb-gallery .gallery-icon{overflow:hidden}
.cb-gallery .gallery-icon img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform 1.4s var(--cb-ease),filter .6s}
.cb-gallery .gallery-item:hover img{transform:scale(1.045)}
@media (max-width:767px){.cb-gallery .gallery-item{width:50%!important;padding:0 4px 8px!important}}

/* Llistes */
.cb-facts .elementor-icon-list-item{padding-block:14px!important;border-bottom:1px solid rgba(38,43,40,.14)}
.cb-dark .cb-facts .elementor-icon-list-item{border-color:rgba(255,255,255,.16)}
.cb-rules .elementor-icon-list-text{text-transform:none}

/* Amenities */
.cb-amen .elementor-icon-box-icon .elementor-icon{transition:transform .6s var(--cb-ease)}
.cb-amen:hover .elementor-icon-box-icon .elementor-icon{transform:translateY(-3px)}

/* Mapa */
.cb-map iframe{filter:grayscale(.85) contrast(1.05);transition:filter .8s}
.cb-map:hover iframe{filter:none}

/* Barra mòbil de reserva */
.cb-mobile-bar{display:none!important}
@media (max-width:767px){
  .cb-mobile-bar{display:flex!important;position:fixed!important;left:0;right:0;bottom:0;z-index:998;padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;background:rgba(38,43,40,.96);backdrop-filter:blur(6px);transform:translateY(110%);transition:transform .5s var(--cb-ease)}
  .cb-scrolled .cb-mobile-bar{transform:none}
  body{padding-bottom:0}
  .cb-site-footer{padding-bottom:72px}
}

/* Pàgines sense Elementor (legals) */
body:not(.elementor-page) .site-main{max-width:760px;margin:0 auto;padding-left:20px;padding-right:20px;padding-bottom:80px}
body:not(.elementor-page) .site-main h1{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:clamp(40px,6vw,64px);line-height:1;margin:56px 0 28px;color:var(--cb-slate)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .cb-js .cb-shutter img{clip-path:none}
  .cb-js .cb-hero .cb-hero-inner>*{opacity:1;transform:none}
  .cb-par img,.cb-hero-media img{transform:none!important}
}

/* Collages (imatge gran + petita flotant) */
.cb-collage{position:relative}
.cb-collage-small{position:absolute!important;right:-4%;bottom:0;width:44%!important;z-index:2}
.cb-collage-small--left{right:auto;left:-4%}
.cb-collage--hist .cb-collage-small{width:40%!important}
.cb-row .cb-collage-small{width:34%!important;bottom:-4%}
@media (max-width:1024px){.cb-collage-small{right:0}.cb-collage-small--left{left:0}}
@media (max-width:767px){.cb-collage-small{width:46%!important}.cb-row .cb-collage-small{width:40%!important}}

/* Habitacions (graella fosca) i activitats */
.cb-room{transition:background-color .6s var(--cb-ease)}
.cb-room:hover{background:rgba(255,255,255,.04)}
.cb-room .cb-facts .elementor-icon-list-item{padding-block:7px!important}
.cb-act .elementor-heading-title{transition:color .4s}
.cb-carousel .swiper-slide-image{aspect-ratio:4/3;object-fit:cover;width:100%}
.cb-carousel .elementor-swiper-button{background:rgba(38,43,40,.55);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%}

/* Peu */
.cb-foot-list a{color:#fff!important;text-decoration:none}
.cb-foot-list a:hover{color:#EFE8E1!important;text-decoration:underline;text-underline-offset:4px}
.cb-footer .cb-facts .elementor-icon-list-item,.cb-foot-list .elementor-icon-list-item{border:0!important}
.cb-foot-lang .cb-lang{font-size:16px}
.cb-mobile-bar .elementor-widget-button{flex:1}
.cb-mobile-bar .elementor-button{width:100%;justify-content:center}

/* Menú: subratllat amb el marró del logo */
.cb-menu a::after{background:#88674F;height:2px}
.cb-dark a:not(.elementor-button){color:inherit}
.cb-how a,.cb-amen a{color:#6F523F;text-decoration:underline;text-underline-offset:3px}

/* Correccions de render */
.cb-hero-media>.elementor-widget-container,.cb-hero-media a{display:block;height:100%!important;width:100%!important}
.cb-hero-media img{height:100%!important;width:100%!important;display:block}
.cb-logo{flex-shrink:0}
.cb-logo img{height:52px!important;width:auto!important;max-width:none!important}
@media (max-width:1024px){.cb-logo img{height:40px!important}}
.cb-burger,.cb-burger:hover,.cb-burger:focus,.cb-burger:active{background:transparent!important;border:0!important;box-shadow:none!important;padding:10px 0!important;color:#fff!important}
.cb-menu-wrap{flex-shrink:0}
.cb-hero-media{z-index:0!important}
.cb-hero-inner,.cb-hero-inner-static,.cb-scroll-cue{position:relative;z-index:2}
.cb-site-header .cb-menu a,.cb-site-header .cb-burger{color:#fff}
.cb-site-header .cb-lang a,.cb-site-footer .cb-lang a{color:rgba(255,255,255,.62)}
.cb-site-header .cb-lang a:hover,.cb-site-footer .cb-lang a:hover{color:#fff}
.cb-site-footer .cb-lang span[aria-current]{color:#fff}

/* Correccions 2 */
html,body{overflow-x:clip}
.cb-site-header .cb-header{min-height:var(--cb-head-h)!important;flex-wrap:nowrap!important}
.cb-header>.cb-logo{width:auto!important;flex:0 0 auto!important;max-width:none!important}
.cb-header>.e-con{flex:1 1 auto!important;width:auto!important;min-width:0}
.cb-cards{margin-inline:-12px!important;width:calc(100% + 24px)!important;max-width:none!important}
.cb-cards>.e-con{padding-inline:12px!important}
.cb-foot-cols>.e-con{padding-right:32px!important}
@media (max-width:767px){.cb-foot-cols>.e-con{padding-right:0!important}}
.cb-footer .cb-logo{width:auto!important}
.cb-footer .cb-logo img{height:56px!important}
@media (max-width:767px){.cb-cards{margin-inline:-6px!important;width:calc(100% + 12px)!important}.cb-cards>.e-con{padding-inline:6px!important}.cb-space .elementor-image-box-img{margin-bottom:10px!important}}
/* Llistes llargues a dues columnes */
.cb-cols .elementor-icon-list-items{columns:2;column-gap:36px}
.cb-cols .elementor-icon-list-item{break-inside:avoid}
@media (max-width:767px){.cb-cols .elementor-icon-list-items{column-gap:18px}.cb-cols .elementor-icon-list-item{padding-block:9px!important}.cb-cols .elementor-icon-list-text{font-size:15px!important}}
/* Habitacions en desplegables (Toggle nadiu) */
.cb-toggle .elementor-tab-title{border-top:1px solid rgba(255,255,255,.16)!important;border-bottom:0!important}
.cb-toggle .elementor-toggle-item:last-child .elementor-tab-content{border-bottom:1px solid rgba(255,255,255,.16)!important}
.cb-toggle .elementor-toggle-item{border:0!important}
.cb-toggle .elementor-tab-content{border:0!important}
.cb-toggle .elementor-tab-title a{color:inherit!important;text-decoration:none!important}
.cb-ul{list-style:none;margin:0;padding:0;columns:2;column-gap:28px}
.cb-ul li{padding:6px 0;break-inside:avoid;border-bottom:1px solid rgba(255,255,255,.08)}
@media (max-width:767px){.cb-ul{columns:1}}
.cb-dark .cb-toggle .elementor-tab-title,.cb-dark .cb-toggle .elementor-tab-title a,.cb-dark .cb-toggle .elementor-toggle-icon{color:#fff!important}
.cb-dark .cb-toggle .elementor-tab-title.elementor-active,.cb-dark .cb-toggle .elementor-tab-title.elementor-active a,.cb-dark .cb-toggle .elementor-tab-title:hover a{color:#EFE8E1!important}
.cb-dark .cb-toggle .elementor-tab-content{color:rgba(255,255,255,.88)!important}
.cb-ul li:first-child{padding-top:6px}

/* ---------- Formulari de contacte [cb_form] ---------- */
.cb-form{display:flex;flex-direction:column;gap:18px;max-width:640px}
.cb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.cb-form .cb-f{margin:0;display:flex;flex-direction:column;gap:7px}
.cb-form label{font-size:15px;font-weight:500;color:var(--cb-slate);line-height:1.35}
.cb-form label span[aria-hidden]{color:var(--cb-iron)}
.cb-form input:not([type=checkbox]),.cb-form textarea{width:100%;box-sizing:border-box;font:inherit;font-size:17px;color:var(--cb-slate);background:#fff;border:1px solid #D8D2CA;border-radius:0;padding:13px 15px;transition:border-color .3s,box-shadow .3s}
.cb-form textarea{resize:vertical;min-height:140px}
.cb-form input:focus,.cb-form textarea:focus{outline:none;border-color:var(--cb-iron);box-shadow:0 0 0 1px var(--cb-iron)}
.cb-form [aria-invalid=true]{border-color:#A23B2A!important;box-shadow:0 0 0 1px #A23B2A!important}
.cb-form .cb-f--priv label{flex-direction:row;display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:15px}
.cb-form .cb-f--priv input{margin-top:3px;width:18px;height:18px;accent-color:var(--cb-iron);flex-shrink:0}
.cb-form .cb-f--priv a,.cb-form-rc a{color:var(--cb-iron-d);text-decoration:underline;text-underline-offset:2px}
.cb-form .cb-btn{cursor:pointer;border:0}
.cb-form .cb-btn[disabled]{opacity:.6;cursor:progress}
.cb-form-msg{margin:0;min-height:1.4em;font-size:16px}
.cb-form-msg.is-ok{color:var(--cb-moss);font-weight:500}
.cb-form-msg.is-err{color:#A23B2A}
.cb-form-rc{margin:0;font-size:13px;color:#6E6A64;line-height:1.5}
.cb-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.grecaptcha-badge{visibility:hidden!important}
@media (max-width:767px){.cb-form-grid{grid-template-columns:1fr}}

/* Àncores dels formularis: que la capçalera fixa no les tapi */
#cb-reserva,#cb-contacte{scroll-margin-top:110px}

/* 2026-10-21 — Logo vertical, hero amb diapositives, xarxes socials */
.cb-logo img{height:60px!important}
@media (max-width:1024px){.cb-logo img{height:46px!important}}
.cb-footer .cb-logo img{height:96px!important}
.cb-site-header .cb-logo{transition:opacity .45s var(--cb-ease,ease)}
body:has(.cb-hero-logo) .cb-site-header:not(.is-solid) .cb-logo{opacity:0;pointer-events:none}
.cb-hero-logo{margin-bottom:22px!important}
.cb-hero-logo img{width:230px!important;height:auto!important;max-width:60vw!important;filter:drop-shadow(0 2px 18px rgba(10,12,11,.35))}
@media (max-width:767px){.cb-hero-logo{margin-bottom:14px!important}.cb-hero-logo img{width:150px!important}}
.cb-hero .cb-hero-slide{opacity:0}
.cb-slides-on .cb-hero-media{opacity:0;transition:opacity 1.6s ease}
.cb-slides-on .cb-hero-media.is-prev{opacity:1;z-index:0!important;transition:none}
.cb-slides-on .cb-hero-media.is-active{opacity:1;z-index:1!important}
.cb-social{margin-top:20px!important}
.cb-social .elementor-social-icon{transition:background-color .3s,border-color .3s,color .3s}
.cb-hero .cb-hero-inner,.cb-hero .cb-hero-inner-static{position:relative;z-index:3!important}.cb-hero .cb-scroll-cue{z-index:3!important}
.cb-hero-media img[src*="andorra-mirador-roc-del-quer"]{--cb-focus:50% 100%}
.cb-r169 figure{position:relative}.cb-r169 figcaption,.cb-r169 .widget-image-caption{position:absolute;right:14px;bottom:10px;margin:0!important;font-size:11px;line-height:1.3;color:#fff!important;text-shadow:0 1px 6px rgba(0,0,0,.75);opacity:.9;z-index:2;pointer-events:none}
.cb-follow-title{margin-top:28px!important}.cb-follow-title .elementor-heading-title{font-size:22px}
