/*
Theme Name: Cala Figuera
Theme URI: https://www.calafigueraapartamentos.com/
Author: Apartamentos Cala Figuera
Description: Tema boutique para Apartamentos Cala Figuera, compatible con Elementor y Cala Reservas.
Version: 2.5.3
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: cala-figuera
*/
:root{--navy:#163245;--blue:#1684a8;--accent:#3dbb82;--orange:#a9610e;--sky:#e3f2f5;--paper:#fbfaf7;--white:#fff;--line:#d8e0e4;--text:#1b2a33;--muted:#65727a;--shadow:0 22px 60px rgba(13,36,54,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--paper);line-height:1.65}h1,h2,h3,h4{font-family:Anton,Impact,sans-serif;text-transform:uppercase;letter-spacing:0;line-height:.98;color:var(--navy);margin:0}a{color:var(--blue)}img{max-width:100%;height:auto;display:block}.container{width:min(100% - 40px,1216px);margin-inline:auto}.section{padding:96px 0}.eyebrow{font-family:"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--accent);margin:0 0 18px}.eyebrow.blue{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--blue);color:var(--white);border:0;border-radius:6px;padding:14px 20px;font-weight:700;text-decoration:none;transition:transform .2s ease,filter .2s ease}.btn:hover{filter:brightness(1.08);transform:translateY(-2px);color:var(--white)}
.site-header{position:relative;z-index:50;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.16)}.site-header.over-hero{position:absolute;inset:0 0 auto;background:transparent}.site-header .container{height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-logo{display:flex;align-items:center;flex:0 0 auto;height:108px;line-height:0}.site-logo .cala-brand-logo{display:block;width:auto;height:86px;max-width:none;object-fit:contain;border:0;border-radius:4px;background:#fff}.site-logo img,.site-logo .custom-logo{width:auto;max-height:86px;border:0;border-radius:4px}.main-nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}.main-nav a{color:rgba(255,255,255,.92);text-decoration:none;font-size:.9rem;font-weight:600}.main-nav a:hover{color:var(--accent)}.header-book{font-size:.85rem}.nav-toggle{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);background:transparent;border-radius:6px;padding:9px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:#fff;margin:5px 0}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero{position:relative;min-height:92svh;color:#fff;display:flex;align-items:flex-end;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero::after{content:"";position:absolute;inset:0;background:rgba(13,36,54,.55)}.hero-shape{position:absolute;z-index:1;inset:-8% -16% -8% auto;width:58%;transform:rotate(6deg);border-left:1px solid rgba(255,255,255,.28);background:rgba(27,143,184,.28);backdrop-filter:blur(4px)}.hero-content{position:relative;z-index:2;padding-top:150px;padding-bottom:78px}.hero h1{font-size:clamp(3.7rem,8vw,7rem);color:#fff;max-width:11ch}.hero-content>p:not(.eyebrow){max-width:620px;font-size:1.08rem;color:rgba(255,255,255,.86);margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn.ghost{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.48)}
.feature-strip{background:var(--navy);color:#fff;padding:18px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr)}.feature-grid p{margin:0;padding:5px 22px;display:flex;align-items:center;gap:12px;border-right:1px solid rgba(255,255,255,.15);font-weight:600;font-size:.9rem}.feature-grid p:first-child{padding-left:0}.feature-grid p:last-child{border:0}.feature-grid span{color:var(--accent);font-size:1.4rem}
.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:48px}.section-heading h2{font-size:clamp(3rem,5vw,5.3rem);max-width:10ch}.section-heading>p{max-width:560px;color:var(--muted);justify-self:end;margin:0}.stay-types{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stay-type{position:relative;min-height:480px;overflow:hidden}.stay-type>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.stay-type:hover>img{transform:scale(1.04)}.stay-type::after{content:"";position:absolute;inset:0;background:rgba(13,36,54,.34)}.stay-glass{position:absolute;z-index:2;inset:auto 20px 20px;padding:24px;background:rgba(255,255,255,.84);backdrop-filter:blur(14px)}.stay-glass small{font-family:"JetBrains Mono",monospace;color:var(--blue)}.stay-glass h3{font-size:2.5rem;margin-top:5px}.stay-glass p{color:var(--muted);margin:8px 0 0}.unit-list{margin-top:56px}.unit-list>h3{font-size:2.1rem;margin-bottom:22px}.surroundings{background:var(--sky)}.place-grid{display:grid;grid-template-columns:7fr 5fr;grid-template-rows:250px 250px;gap:20px}.place{position:relative;overflow:hidden;margin:0}.place-main{grid-row:1/3}.place img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.place:hover img{transform:scale(1.04)}.place::after{content:"";position:absolute;inset:0;background:rgba(13,36,54,.22)}.place figcaption{position:absolute;z-index:2;left:24px;bottom:20px;font-family:Anton,sans-serif;text-transform:uppercase;color:#fff;font-size:2.2rem}.contact-band{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:96px 0}.contact-shape{position:absolute;right:-12%;top:-30%;height:160%;width:45%;transform:rotate(6deg);border-left:1px solid rgba(255,255,255,.15);background:rgba(27,143,184,.18)}.contact-grid{position:relative;display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:40px}.contact-grid h2{font-size:clamp(3.2rem,6vw,6rem);max-width:10ch;color:#fff;margin-bottom:28px}.contact-grid address{font-style:normal;justify-self:end}.contact-grid address small{color:rgba(255,255,255,.58)}.contact-grid address p{font-size:1.1rem}.contact-grid address a{color:var(--accent);font-weight:700;text-decoration:none}.site-footer{padding:25px 0;background:var(--paper);color:var(--muted)}.footer-line{display:flex;justify-content:space-between;gap:20px;font-size:.85rem}
.entry-content{min-height:60vh;padding:70px 0}.entry-content>*{width:min(100% - 40px,1216px);margin-left:auto;margin-right:auto}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:860px){.site-header .header-book{display:none}.nav-toggle{display:block;margin-left:auto}.main-nav{position:absolute;top:80px;left:0;right:0;background:rgba(13,36,54,.98);display:none;border-top:1px solid rgba(255,255,255,.15)}.main-nav.open{display:block}.main-nav ul{display:flex;flex-direction:column;gap:0;padding:10px 20px}.main-nav a{display:block;padding:13px 0}.section{padding:72px 0}.section-heading,.contact-grid{grid-template-columns:1fr}.section-heading>p,.contact-grid address{justify-self:start}.place-grid{grid-template-columns:1fr;grid-template-rows:380px 240px 240px}.place-main{grid-row:auto}.hero-shape{display:none}}
@media(max-width:640px){.container{width:min(100% - 32px,1216px)}.hero{min-height:90svh}.hero h1{font-size:3.7rem}.stay-types{grid-template-columns:1fr}.stay-type{min-height:420px}.feature-grid{grid-template-columns:1fr}.feature-grid p{padding:7px 0;border:0}.section-heading h2{font-size:3.2rem}.footer-line{flex-direction:column}.contact-band{padding:72px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.stay-type{text-decoration:none;color:inherit;display:block;}
.stay-type:focus-visible{outline:3px solid currentColor;outline-offset:4px;}

/* Selector de idioma */
.cala-lang-switcher{display:flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap}
.cala-lang{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 7px;border:1px solid rgba(255,255,255,.28);border-radius:5px;color:rgba(255,255,255,.82);text-decoration:none;font-size:.72rem;font-weight:700;letter-spacing:.03em;transition:all .18s ease}
.cala-lang:hover,.cala-lang.is-active{background:#fff;color:var(--navy);border-color:#fff}
@media(max-width:860px){.cala-lang-switcher{position:absolute;right:74px;top:25px;margin:0;gap:3px}.cala-lang{min-width:30px;height:28px;padding:0 5px;font-size:.68rem}.site-header .container{position:relative}.site-logo{height:80px}.site-logo .cala-brand-logo{height:62px;max-width:150px}}

.cala-lang-switcher{position:relative;z-index:1000}.cala-lang{cursor:pointer}
/* Header móvil 2.1.6 */
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.header-actions .cala-lang-switcher{position:static;margin:0}.header-actions .nav-toggle{flex:0 0 auto}
@media(max-width:860px){.site-header .container{height:78px;gap:10px}.site-logo{height:78px;max-width:150px}.site-logo .cala-brand-logo{height:64px;max-width:none}.header-actions{gap:8px}.cala-lang-switcher{position:static!important}.cala-lang{min-width:31px;height:30px;padding:0 6px;font-size:.68rem}.nav-toggle{width:40px;height:40px;padding:7px;margin:0}.main-nav{top:78px}.header-book{display:none!important}}
@media(max-width:520px){.site-logo{max-width:135px}.site-logo .cala-brand-logo{height:58px;max-width:none}.header-actions{gap:5px}.cala-lang{min-width:27px;height:28px;padding:0 4px;font-size:.64rem}.nav-toggle{width:38px;height:38px}}
