@font-face{font-family:Raleway;src:url('assets/fonts/raleway.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
/* Explicit grid styles must never override hidden tab panels. */
/* Cada bloque tiene su propio fondo, reutilizando los dos tonos de base. */
#crianca{background:var(--paper);margin-top:0}
#sorra{background:#efede3}
.shop{background:var(--paper)}
.services{background:#efede3;padding-block:90px}
.gallery{background:var(--paper);padding-top:72px}
@media(max-width:760px){.services{padding-block:58px}.gallery{padding-top:52px}}
[role="tabpanel"][hidden]{display:none!important}
.waldorf-panel{background:#efede3}.waldorf-copy p{font-size:18px;line-height:1.85}.waldorf-details,.sand-details{margin-top:54px}.waldorf-details .prose,.sand-details .prose{max-width:100%;padding-bottom:30px}.waldorf-details .prose p,.sand-details .prose p{font-size:18px;line-height:1.85}
.services-panel{background:#efede3}.services-panel .feature-copy{padding-top:18px}.services-summary{font-size:18px;line-height:1.8;margin-bottom:30px}.services-panel .accordions{max-width:690px}
main img{border-radius:20px!important}
.intro-details{border-top:1px solid var(--fern);border-bottom:1px solid var(--line)}.intro-details summary{color:var(--fern);padding-block:18px}.intro-details .prose{padding:6px 0 28px}.intro-details .prose p{font-size:18px;line-height:1.85}
.intro-grid>.intro-details{grid-column:1 / -1}.intro-grid>.intro-details .prose{max-width:100%}
.space-tab-panels:not(:has(> :not([hidden]))),
.group-tab-panels:not(:has(> :not([hidden]))){padding-top:0}
:root{--fox:#b25836;--mud:#854526;--nude:#d1aa9b;--terracota:#c28158;--fern:#767449;--pine:#2a2f1f;--paper:#faf8f3;--line:#dedbcf}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--pine);background:var(--paper);font-family:Raleway,Arial,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--fox);outline-offset:6px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:5px}.wrap{width:min(1220px,calc(100% - 96px));margin-inline:auto}.header{min-height:136px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.logo img{width:116px;height:116px;object-fit:contain;mix-blend-mode:multiply}.header nav{display:flex;gap:30px;font-size:13px;font-weight:500}.header nav a:hover{color:var(--fox)}.button{display:inline-flex;justify-content:center;align-items:center;gap:34px;background:var(--fern);color:white;padding:15px 24px;font-size:13px;font-weight:600;border:1px solid var(--fern);border-radius:3px;transition:background .2s}.button:hover{background:var(--pine)}.button.small{padding:10px 17px;font-size:12px}.hero{display:grid;grid-template-columns:.95fr 1.05fr;gap:65px;align-items:center;padding-block:54px 78px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.19em;text-transform:uppercase;color:var(--mud);margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;letter-spacing:-.045em;line-height:1.14}h1{font-size:clamp(48px,5.7vw,79px);margin-bottom:28px}em{font-style:normal;color:var(--fern);font-weight:350}h2{font-size:clamp(32px,3.5vw,48px);margin-bottom:28px}h3{font-size:27px;letter-spacing:-.03em}p{margin-bottom:20px}.hero-copy>p:not(.eyebrow){max-width:340px;font-size:16px;line-height:1.85;margin-bottom:30px}.hero-foot{display:block;margin-top:28px;font-size:11px;color:var(--mud);letter-spacing:.04em}.hero-image{position:relative}.hero-image>img{height:620px;border-radius:180px 180px 4px 4px;object-position:50% 50%}.photo-note{position:absolute;bottom:25px;left:-25px;background:var(--paper);color:var(--mud);padding:15px 22px;font-size:12px;box-shadow:0 5px 25px #2a2f1f0c}.intro{padding-block:55px 100px;border-top:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.intro-grid h2{max-width:410px}.prose{font-size:14px;line-height:1.9}.prose p:last-child{margin-bottom:0}.spaces{background:#efede3;padding-block:80px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-head h2{margin-bottom:0}.section-head>p{font-size:13px;margin-bottom:0;line-height:1.8}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.space-card img{height:330px;transition:filter .2s;border-radius:3px}.space-card:hover img{filter:brightness(.94)}.card-number{display:block;margin-top:20px;font-size:10px;letter-spacing:.1em;color:var(--mud)}.space-card h3{display:flex;justify-content:space-between;margin:10px 0}.space-card h3 span{font-size:20px;color:var(--fern)}.space-card p{font-size:13px;margin:0}.room{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;padding-block:100px;border-bottom:1px solid var(--line)}.room:nth-of-type(even) .room-photo{order:2}.room-photo img{height:620px;border-radius:3px;object-position:center}.room-photo>span{font-size:11px;display:block;margin-top:15px;color:var(--mud)}.room-copy{padding-top:10px}.room-copy .eyebrow{margin-bottom:18px}.sand{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center;padding-block:90px}.sand img{height:460px;border-radius:180px 180px 3px 3px}.groups{background:#efede3;padding-block:80px}.group-intro{max-width:800px;margin-bottom:40px}details{border-top:1px solid #c6c5b4}details:last-child{border-bottom:1px solid #c6c5b4}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;cursor:pointer;font-weight:500;font-size:17px;line-height:1.5}summary::-webkit-details-marker{display:none}summary span{color:var(--mud);font-size:25px;font-weight:300}details[open] summary span{transform:rotate(45deg)}details .prose{max-width:850px;padding-bottom:30px}.shop{display:grid;grid-template-columns:1fr .85fr;gap:120px;align-items:center;padding-block:100px}.shop img{height:510px;border-radius:3px}.services{padding-block:0 85px}.services h2{margin-bottom:40px}.gallery{padding-bottom:90px}.gallery>div{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery img{height:260px;border-radius:3px}.visit{background:var(--pine);color:var(--paper);padding-block:80px;text-align:center}.visit .eyebrow{color:var(--nude)}.visit h2{font-size:clamp(38px,4.5vw,60px)}.visit em{color:var(--nude)}.visit p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:670px;margin-inline:auto}.visit .button{margin-top:10px;background:var(--nude);color:var(--pine);border-color:var(--nude)}.visit .button:hover{background:var(--terracota)}footer{display:flex;align-items:center;gap:35px;padding-block:30px}footer img{width:105px;height:105px;object-fit:contain;mix-blend-mode:multiply}footer p{font-size:13px;margin:0}footer p span{font-size:11px}footer>a{margin-left:auto;font-size:12px;color:var(--mud)}
.info-link{display:inline-block;margin-top:18px;color:var(--mud);font-weight:600;font-size:13px;border-bottom:1px solid var(--nude)}.room{align-items:center;padding-block:60px}.room-photo img{height:400px}.intro{padding-bottom:60px}.groups-photo{width:100%;height:330px;object-fit:cover;margin-bottom:30px;border-radius:3px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;text-align:left}.contact-layout label{display:block;font-size:13px;margin:12px 0 6px}.contact-layout input,.contact-layout textarea,.contact-layout select{width:100%;padding:12px;background:var(--paper);color:var(--pine);border:1px solid var(--nude);border-radius:3px;font:inherit}.contact-layout input:focus,.contact-layout textarea:focus,.contact-layout select:focus{outline:3px solid var(--terracota);outline-offset:2px}.contact-layout .form-note{font-size:12px!important;margin-top:15px}.contact-layout button{font-family:inherit;cursor:pointer}.contact-layout #contact-status{font-size:12px;margin-top:15px}.contact-layout a{text-decoration:underline}.contact-layout textarea{resize:vertical}@media(max-width:760px){.contact-layout{grid-template-columns:1fr;gap:24px}.groups-photo{height:260px}}
@media(min-width:1600px){.hero-image>img{height:660px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header nav{gap:16px}.hero{gap:35px}.hero-image>img{height:530px}.intro-grid,.room,.sand{gap:40px}.shop{gap:55px}.space-grid{gap:18px}.space-card img{height:280px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header{flex-wrap:wrap;gap:0;min-height:0;padding-bottom:15px}.logo img{width:94px;height:94px}.header nav{order:3;width:100%;justify-content:space-between;gap:9px;font-size:11px}.header .small{font-size:11px;padding:9px 12px}.hero{grid-template-columns:1fr;padding-block:38px 55px;gap:35px}.hero h1{font-size:58px}.hero-copy>p:not(.eyebrow){max-width:100%}.hero-image>img{height:470px;border-radius:140px 140px 3px 3px}.photo-note{left:10px;bottom:15px;font-size:11px}.hero-foot{margin-top:20px}.intro{padding-block:40px 55px}.intro-grid,.room,.sand,.shop{grid-template-columns:1fr;gap:28px}.intro-grid h2{margin-bottom:0}.spaces,.groups{padding-block:50px}.section-head{display:block}.section-head>p{margin-top:20px}.space-grid{grid-template-columns:1fr;gap:35px}.space-card img{height:380px}.space-card h3{font-size:28px}.room{padding-block:55px}.room:nth-of-type(even) .room-photo{order:0}.room-photo img{height:400px}.sand{padding-block:55px}.sand img{height:370px}.shop{padding-block:55px}.shop img{height:400px}.services{padding-bottom:55px}summary{font-size:16px;padding-block:20px}.gallery{padding-bottom:55px}.gallery>div{grid-template-columns:1fr 1fr;gap:12px}.gallery img{height:220px}.visit{padding-block:55px}footer{gap:18px;flex-wrap:wrap}footer>a{margin-left:123px}h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Descripciones con un tamaño cómodo en ordenador y móvil. */
.prose,
.hero-copy>p:not(.eyebrow),
.section-head>p,
.space-card p,
.visit p:not(.eyebrow){font-size:19px;line-height:1.75}
.info-link{font-size:16px;line-height:1.6}
@media(max-width:760px){
  .prose,
  .hero-copy>p:not(.eyebrow),
  .section-head>p,
  .space-card p,
  .visit p:not(.eyebrow){font-size:18px}
}

/* Panels principals: joc i criança / espai sorra */
.feature-panel{padding-block:96px}.feature-panel.groups{background:#efede3}.feature-panel.sand-panel{background:var(--paper)}.feature-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:76px;align-items:start}.feature-image{position:sticky;top:24px}.feature-image img{height:590px;border-radius:3px}.feature-copy h2{margin-bottom:26px}.feature-copy .group-intro{max-width:690px;margin-bottom:38px}.accordions details:first-child{border-top:1px solid #c6c5b4}.accordions .prose{padding-right:8px}.accordions .prose p{font-size:17px;line-height:1.82}.sand-panel .feature-image img{border-radius:180px 180px 3px 3px;object-position:center}.sand-panel .feature-copy{padding-top:32px}
@media(max-width:760px){.feature-panel{padding-block:58px}.feature-grid{grid-template-columns:1fr;gap:32px}.feature-image{position:static}.feature-image img{height:360px}.sand-panel .feature-image img{height:385px}.feature-copy .group-intro{margin-bottom:28px}.accordions .prose p{font-size:18px}}

/* Estructura de grupos según el boceto: imagen, texto, pestañas y ficha activa. */
.groups-main{background:#efede3;padding-block:96px}.groups-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.groups-heading h2{margin-bottom:0}.groups-heading>p{max-width:310px;font-size:16px;line-height:1.75;margin-bottom:2px}.groups-main-image img{width:100%;height:460px;object-fit:cover;border-radius:3px}.groups-intro{max-width:960px;margin:35px auto 38px}.tab-list{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #c6c5b4;padding-bottom:18px}.tab-list button{appearance:none;border:1px solid #b9b99f;border-radius:2px;background:transparent;color:var(--pine);font:600 13px/1.35 Raleway,Arial,sans-serif;padding:12px 17px;cursor:pointer;transition:.18s ease}.tab-list button:hover,.tab-list button[aria-selected="true"]{background:var(--fern);border-color:var(--fern);color:white}.tab-list button:focus-visible{outline:3px solid var(--fox);outline-offset:3px}.group-tab-panels{padding-top:27px}.group-tab-panel{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start;background:var(--paper);padding:22px}.tab-panel-image img{width:100%;height:255px;border-radius:2px;object-fit:cover}.tab-panel-copy h3{font-size:31px;margin:3px 0 16px}.tab-panel-copy .prose p{font-size:17px;line-height:1.82}.tab-panel-copy .info-link{margin-top:3px}
@media(max-width:760px){.groups-main{padding-block:58px}.groups-heading{display:block}.groups-heading>p{margin-top:18px;max-width:100%;font-size:17px}.groups-main-image img{height:300px}.groups-intro{margin-block:28px}.tab-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-bottom:15px}.tab-list button{font-size:12px;padding:12px 9px}.group-tab-panels{padding-top:20px}.group-tab-panel{grid-template-columns:1fr;gap:23px;padding:15px}.tab-panel-image img{height:245px}.tab-panel-copy h3{font-size:28px}.tab-panel-copy .prose p{font-size:18px}}

/* Los tres espacios también se comportan como pestañas: solo se abre uno. */
.groups-intro{max-width:none;margin-inline:0}.space-grid.tab-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border:0;padding:0}.space-grid.tab-list .space-card{display:block;width:100%;padding:0;border:0;background:transparent;color:var(--pine);text-align:left;font:inherit;cursor:pointer}.space-grid.tab-list .space-card:hover,.space-grid.tab-list .space-card[aria-selected="true"]{background:transparent;color:var(--pine)}.space-grid.tab-list .space-card[aria-selected="true"] img{outline:4px solid var(--fern);outline-offset:4px}.space-grid.tab-list .space-card[aria-selected="true"] h3{color:var(--fern)}.space-tab-panels{padding-top:42px}.space-tab-panel{display:grid;grid-template-columns:380px 1fr;gap:56px;align-items:start;background:var(--paper);border-top:1px solid #c6c5b4;padding:28px 0 0}.space-tab-panel .tab-panel-image img{height:330px}.space-tab-panel .tab-panel-copy h3{font-size:38px;margin:2px 0 18px}.space-tab-panel .tab-panel-copy .prose p{font-size:18px;line-height:1.85}
@media(max-width:760px){.groups-intro{margin-inline:0}.space-grid.tab-list{grid-template-columns:1fr;gap:30px}.space-grid.tab-list .space-card[aria-selected="true"] img{outline-offset:3px}.space-tab-panels{padding-top:28px}.space-tab-panel{grid-template-columns:1fr;gap:22px;padding-top:22px}.space-tab-panel .tab-panel-image img{height:275px}.space-tab-panel .tab-panel-copy h3{font-size:31px}.space-tab-panel .tab-panel-copy .prose p{font-size:18px}}
