/* Casa Canaria: Canary trade wind. Full-bleed hero, horizontal scroller, floating cards. Light, airy, rounded. */
:root{--sea:#0F5E6B;--sea2:#0A4650;--wind:#7FB8A4;--basalt:#2B2D2F;--mute:#5E6A6E;--mist:#F1F5F4;--line:#D7E2E0;--sunset:#F0B35A}
body.cca-site{margin:0;background:#fff;color:var(--basalt);font:400 17px/1.6 "Golos Text",sans-serif}
.cca-site h1,.cca-site h2,.cca-site h3{font-family:"Comfortaa",sans-serif;font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0 0 .5em}
.cca-site h1{font-size:clamp(2.1rem,4.6vw,3.6rem)}.cca-site h2{font-size:clamp(1.5rem,2.8vw,2.1rem);color:var(--sea)}.cca-site h3{font-size:1.1rem}
:where(.cca-site) a{color:var(--sea)}
.cca-w{max-width:1180px;margin:0 auto;padding:0 20px}
.cca-hd{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.92);backdrop-filter:blur(8px)}
.cca-hd .cca-w{display:flex;align-items:center;gap:24px;min-height:66px;flex-wrap:wrap}
.cca-logo{display:flex;align-items:center;gap:8px;text-decoration:none;margin-right:auto}
.cca-logo svg{width:38px;height:38px}.cca-logo span{font:700 1.3rem "Comfortaa",sans-serif;color:var(--sea)}
.cca-nav{display:flex;gap:20px}.cca-nav a{text-decoration:none;color:var(--basalt);font-weight:500}
.cca-nav a[aria-current]{color:var(--sea);box-shadow:inset 0 -2px var(--wind)}
.cca-lg{display:flex;background:var(--mist);border-radius:12px;padding:3px}
.cca-lg a{text-decoration:none;font-size:.8rem;font-weight:600;color:var(--mute);padding:5px 9px;border-radius:9px}
.cca-lg a[aria-current]{background:#fff;color:var(--sea)}
.cca-hero-full{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--sea2)}
.cca-hero-full .cca-himg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cca-hero-full .cca-slot{background:linear-gradient(160deg,#0F5E6B,#0A4650 60%,#2B2D2F)}
.cca-hero-full .cca-w{position:relative;width:100%;padding-bottom:48px}
.cca-hero-full .cca-ht{background:rgba(255,255,255,.95);border-radius:28px;padding:30px;max-width:640px}
.cca-hero-full .cca-ht h1{color:var(--sea2)}
.cca-ht p{color:var(--mute)}
.cca-ask input{border-radius:12px;border-color:var(--line)}
.cca-btn{display:inline-flex;justify-content:center;align-items:center;padding:12px 20px;border-radius:14px;border:0;background:var(--mist);color:var(--sea2);font:600 .95rem "Golos Text",sans-serif;text-decoration:none;cursor:pointer}
.cca-btn-main{background:var(--sea);color:#fff}.cca-btn-main:hover{background:var(--sea2)}
.cca-sec{padding:66px 0}.cca-alt{background:var(--mist)}
.cca-sec::before{content:"";display:block;height:0}
.cca-alt{position:relative}
.cca-alt::before{content:"";position:absolute;left:0;right:0;top:-18px;height:20px;background:radial-gradient(20px 18px at 20px 0,transparent 98%,var(--mist)) 0 0/40px 20px repeat-x}
.cca-lead{color:var(--mute);margin-top:-4px}
.cca-dest-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,30%);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}
.cca-d{scroll-snap-align:start;display:flex;flex-direction:column;text-decoration:none;color:var(--basalt);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 2px 0 var(--line)}
.cca-dimg{width:100%;aspect-ratio:3/4;object-fit:cover;display:flex}
.cca-dt{padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.cca-dt b{font:700 1.15rem "Comfortaa",sans-serif;color:var(--sea2)}
.cca-dt span{font-size:.9rem;color:var(--mute)}.cca-dt i{font-style:normal;font-weight:600;font-size:.8rem;color:var(--sea)}
.cca-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 22px}
.cca-card-over .cca-ph{aspect-ratio:1/1;border-radius:26px}
.cca-card-over .cca-cb{position:relative;margin:-60px 14px 0;background:#fff;border-radius:20px;padding:16px 18px;box-shadow:0 10px 30px rgba(15,94,107,.12);display:flex;flex-direction:column;gap:6px}
.cca-ty{margin:0;font-size:.8rem;color:var(--sea);font-weight:600}
.cca-cb h3{margin:0}.cca-cb select{font:inherit;padding:8px;border-radius:10px;border:1px solid var(--line)}
.cca-rt,.cca-sp{margin:0}.cca-ft{margin:0;color:var(--mute);font-size:.88rem}
.cca-cf{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px}.cca-ref{font-size:.75rem;color:var(--mute);margin-left:auto}
.cca-how,.cca-faq{padding:66px 0}
.cca-how ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s;border-top:3px solid var(--wind)}
.cca-how li{counter-increment:s;padding:22px 18px 0 0}
.cca-how li::before{content:"0" counter(s);font:700 1rem "Comfortaa",sans-serif;color:var(--wind)}
.cca-faq details{background:var(--mist);border-radius:16px;padding:14px 18px;margin-bottom:8px}.cca-faq summary{cursor:pointer;font-weight:600}
.cca-co{border:2px solid var(--wind);border-radius:24px;padding:24px}.cca-co dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0}.cca-co dd{margin:0}
.cca-cta{background:var(--sea);color:#fff;padding:48px 0}.cca-cta h2{color:#fff;margin:0}.cca-cta p{margin:0;color:#CFE6E0}
.cca-cta .cca-w{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.cca-cta .cca-btn{background:#fff;color:var(--sea2)}.cca-cta .cca-btn-main{background:var(--sunset);color:#2B2D2F}
.cca-ft-light{background:#fff;padding:40px 0 22px;color:var(--mute);font-size:.94rem;text-align:center}
.cca-ft .cca-w{display:flex;flex-direction:column;align-items:center;gap:14px}
.cca-ft svg{width:40px;height:40px}.cca-ft b{display:block;font:700 1.2rem "Comfortaa",sans-serif;color:var(--sea)}
.cca-ft ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center}
.cca-ft-x{font-size:.82rem;margin:0}
.cca-ph-hd{background:var(--sea2);color:#fff;padding:44px 0 70px}.cca-ph-hd h1{color:#fff}.cca-ph-hd a{color:#CFE6E0}
.cca-cr{font-size:.86rem;opacity:.8;margin:0 0 10px}
.cca-band{margin-top:-48px}.cca-bimg{width:100%;aspect-ratio:21/8;object-fit:cover;border-radius:28px;display:flex}
.cca-req{background:var(--mist);border-radius:24px;padding:24px}
.cca-dist{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.cca-dist div{background:#fff;border-radius:18px;padding:16px}
.cca-also a{background:var(--mist);padding:6px 14px;border-radius:999px;text-decoration:none;font-weight:600}
.cca-note{color:var(--mute);font-size:.9rem}
@media (max-width:900px){.cca-grid{grid-template-columns:1fr 1fr}.cca-how ol{grid-template-columns:1fr 1fr}.cca-dest-scroll{grid-auto-columns:70%}}
@media (max-width:600px){.cca-grid,.cca-how ol{grid-template-columns:1fr}.cca-nav{width:100%;overflow-x:auto}.cca-hero-full .cca-ht{padding:20px}}

/* structural rules */
.cca-mk{background:#FFE45C;color:#1a1a1a;padding:0 .25em;outline:1px dashed #b39a00;border-radius:2px;font-style:normal}
.cca-demo{background:#FFE45C;color:#1a1a1a;text-align:center;font:600 14px/1.3 system-ui,sans-serif;padding:6px 10px}
.cca-slot{display:flex;align-items:flex-end;justify-content:flex-start;padding:12px;background:repeating-linear-gradient(135deg,rgba(0,0,0,.05) 0 12px,rgba(0,0,0,.09) 12px 24px)}
[data-cca-obj][hidden]{display:none!important}
.cca-lb{position:fixed;inset:0;z-index:80;background:rgba(8,10,14,.94);display:none;align-items:center;justify-content:center}
.cca-lb.cca-on{display:flex}
.cca-lb img{max-width:92vw;max-height:84vh;object-fit:contain}
.cca-lb button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:1.8rem;width:48px;height:48px;border-radius:50%;cursor:pointer}
.cca-lb-x{top:14px;right:14px}.cca-lb-p{left:14px;top:calc(50% - 24px)}.cca-lb-f{right:14px;top:calc(50% - 24px)}
.cca-lb-n{position:absolute;bottom:16px;color:#ddd;font:14px system-ui,sans-serif}
.cca-ph{position:relative;overflow:hidden}
.cca-ph img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;display:block}
.cca-pv,.cca-nx{position:absolute;top:calc(50% - 18px);width:36px;height:36px;border-radius:50%;border:0;background:rgba(0,0,0,.45);color:#fff;font-size:1.2rem;cursor:pointer;opacity:.85}
.cca-pv{left:8px}.cca-nx{right:8px}
.cca-n{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.5);color:#fff;font-size:12px;padding:2px 8px;border-radius:10px}
.cca-ask{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end;margin-top:22px}
.cca-ask label{display:flex;flex-direction:column;gap:4px;font-size:.82rem}
.cca-ask input{font:inherit;padding:10px;border:1px solid rgba(0,0,0,.2);border-radius:inherit;background:#fff;color:#111;min-width:0}
.cca-ask .cca-btn{grid-column:span 2}
.cca-two{display:grid;grid-template-columns:1.3fr .9fr;gap:44px;align-items:start}
.cca-btns{display:flex;flex-wrap:wrap;gap:10px}
.cca-also{display:flex;flex-wrap:wrap;gap:8px 18px}
.cca-of{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}
.cca-of-g{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.cca-of-g img{width:100%;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in}
.cca-of-g img:first-child{grid-column:span 3;aspect-ratio:16/10}
.cca-of-b dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px}
.cca-of-b dd{margin:0;font-weight:600}
.cca-of-t{display:flex;flex-direction:column;margin:16px 0}
.cca-of-t b{font-size:2rem}
.cca-ok{display:inline-block;padding:4px 12px;background:#D6F0E2;color:#185C3C;font-weight:600}
:focus-visible{outline:3px solid currentColor;outline-offset:2px}
@media (max-width:900px){.cca-two,.cca-of{grid-template-columns:minmax(0,1fr)}.cca-ask{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media print{.cca-hd,.cca-ft,.cca-cta,.cca-demo,#cca-pay button{display:none!important}}
.cca-ht,.cca-w,.cca-cb,.cca-txt{min-width:0}
.cca-site h1,.cca-site h2{overflow-wrap:break-word;hyphens:auto}
@media (max-width:900px){.cca-hero-full,.cca-hero-split .cca-w,.cca-hero-editorial .cca-w{grid-template-columns:minmax(0,1fr)!important}}
@media (max-width:600px){.cca-site h1{font-size:2.1rem!important}}
.cca-ask input{width:100%;box-sizing:border-box}
.cca-nav a{white-space:nowrap}
@media (max-width:600px){.cca-logo span{font-size:1.15rem!important;white-space:nowrap}}
.cca-ask select{font:inherit;padding:10px;border:1px solid rgba(0,0,0,.2);border-radius:inherit;background:#fff;color:#111;width:100%;box-sizing:border-box;min-width:0}
.cca-ask .cca-btn{grid-column:span 1}
.cca-bud{grid-column:span 2}
.cca-ages{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.cca-ages[hidden],.cca-ages-err[hidden]{display:none}
.cca-ages-err{grid-column:1/-1;margin:0;color:#B3261E;font-size:.88rem;font-weight:600}
.cca-ask .cca-bad{outline:2px solid #B3261E;outline-offset:1px}
@media (max-width:900px){.cca-bud{grid-column:1/-1}}
