@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Teko:wght@400;500;600;700&display=swap');
:root{--ink:#171714;--paper:#f7f5ef;--gold:#c49b45;--gold-dark:#916d28;--red:#c91f37;--green:#244d31;--muted:#716f67;--line:#dedbd2;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Barlow',sans-serif}h1,h2,h3,p{margin-top:0}a{color:inherit}section[id]{scroll-margin-top:20px}
.site-header{height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border-bottom:1px solid #e9e6df;position:relative;z-index:3}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:220px;height:98px;object-fit:contain;display:block;transform:translateY(12px)}.site-header nav{display:flex;align-items:center;gap:clamp(12px,1.7vw,25px)}.site-header nav a{text-decoration:none;color:#201f1b;font-size:.7rem;font-weight:700;white-space:nowrap;text-transform:uppercase;letter-spacing:.025em}.site-header nav a:hover{color:var(--gold-dark)}.site-header nav .nav-reserve{padding:12px 18px;border-radius:5px;background:var(--gold);color:#171714}.site-header nav .nav-reserve:hover{background:#d6b15f}
.hero{min-height:580px;display:flex;align-items:center;padding:67px 7vw;color:#fff;position:relative;isolation:isolate;overflow:hidden;background:#16201b}.hero-image{position:absolute;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(180deg,rgba(13,20,29,.18),rgba(9,20,15,.38) 52%,rgba(9,19,13,.92)),linear-gradient(180deg,#445766 0%,#73818a 31%,#3e603f 32%,#23452d 100%)}.hero-image:before{content:"";position:absolute;left:-5%;right:-5%;bottom:-4%;height:53%;transform:skewY(-4deg);background:repeating-linear-gradient(90deg,rgba(195,223,182,.075) 0 13%,transparent 13% 26%),linear-gradient(180deg,#397249,#133d25)}.hero-image:after{content:"";position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(90deg,rgba(0,0,0,.66) 0%,rgba(0,0,0,.3) 48%,rgba(0,0,0,.04) 100%)}.stadium-lights{position:absolute;top:15%;left:52%;width:9px;height:9px;border-radius:50%;background:#fff8de;box-shadow:0 0 18px 8px rgba(255,239,183,.36),-245px 27px 0 1px rgba(255,248,225,.9),-245px 27px 15px 7px rgba(255,239,183,.34),260px 9px 0 1px rgba(255,248,225,.9),260px 9px 15px 7px rgba(255,239,183,.34)}.pitch-lines{position:absolute;right:6%;bottom:10%;width:35%;height:30%;border:1px solid rgba(255,255,255,.3);transform:skewY(-4deg)}.pitch-lines span{position:absolute;top:0;bottom:0;left:50%;border-left:1px solid rgba(255,255,255,.28)}.pitch-lines i{position:absolute;left:calc(50% - 30px);top:calc(50% - 30px);height:60px;width:60px;border:1px solid rgba(255,255,255,.28);border-radius:50%}.hero-image-note{position:absolute;right:6%;bottom:6%;font-size:.58rem;color:rgba(255,255,255,.68);letter-spacing:.08em;text-transform:uppercase;z-index:1}.hero-copy{position:relative;z-index:1;max-width:900px}.eyebrow,.section-kicker{font-size:.68rem;letter-spacing:.16em;font-weight:700}.hero .eyebrow{color:#e5c871;display:flex;align-items:center;gap:10px}.hero .eyebrow span{height:2px;width:23px;background:var(--red)}.hero h1,.section-heading h2,.kids-copy h2,.location-copy h2{font-family:'Teko',sans-serif;font-weight:600;letter-spacing:-.025em}.hero h1{font-size:clamp(3rem,6.7vw,5.9rem);line-height:.96;text-transform:uppercase;margin:22px 0 15px;text-shadow:0 2px 20px rgba(0,0,0,.25)}.hero-copy>p:not(.eyebrow){font-size:1rem;color:#f4f2ed;margin-bottom:0}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:25px}.button{min-height:46px;padding:12px 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:.72rem;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.035em;border:0;border-radius:4px;transition:filter .18s,transform .18s}.button:hover{filter:brightness(1.06);transform:translateY(-1px)}.button-gold{background:var(--gold);color:#191814}.button-dark{background:var(--ink);color:#fff}.button-whatsapp{background:#25a85a;color:#fff}.hero-image-note{right:6%;bottom:5%}
.section{padding:74px 7vw}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:27px}.section-kicker{color:var(--gold-dark);margin:0 0 10px}.section-heading h2,.kids-copy h2,.location-copy h2{font-size:clamp(2.5rem,4.6vw,3.8rem);line-height:1;text-transform:uppercase;margin:0}.section-heading>p{font-size:.78rem;line-height:1.55;color:var(--muted);margin:0 0 4px}
.team-section{background:#fff;text-align:center}.team-section .section-heading{text-align:left}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.team-card{min-height:160px;background:var(--paper);border:1px solid #ebe7dc;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.icon-wrap{width:53px;height:53px;display:grid;place-items:center;border-radius:50%;background:#f1e8d4;color:var(--gold-dark);margin-bottom:13px}.icon-wrap svg{width:33px;height:33px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.team-card h3{font:500 1.32rem 'Teko',sans-serif;text-transform:uppercase;margin:0}.team-section>.button{margin-top:2px}
.menu-section{background:#f2efe7}.menu-categories{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin:0 0 20px}.menu-categories article{min-height:137px;padding:16px 9px;background:#fff;border:1px solid #e8e3d9;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.category-icon{font-size:1.8rem;line-height:1;color:var(--gold-dark);margin-bottom:12px}.menu-categories h3{font:500 .95rem 'Teko',sans-serif;text-transform:uppercase;margin:0}.menu-section>.button{display:flex;width:max-content;margin:auto}.menu-note{text-align:center;font-size:.69rem;color:var(--muted);margin:12px 0 0}
.kids-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:6vw;align-items:center;background:#fff}.kids-art{min-height:300px;border-radius:5px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 25%,rgba(250,226,162,.34),transparent 45%),linear-gradient(145deg,#223d29,#17231d 57%,#111714);color:#fff}.kids-art:before{content:"";position:absolute;left:-5%;right:-5%;bottom:-20%;height:59%;border:1px solid rgba(245,239,216,.34);border-radius:50% 50% 0 0;background:repeating-linear-gradient(90deg,rgba(237,242,224,.05) 0 15%,transparent 15% 30%),linear-gradient(180deg,#386a3d,#1c452b)}.kids-ball{position:absolute;top:14%;right:15%;font-size:clamp(3.5rem,7vw,5.8rem);filter:drop-shadow(0 8px 10px rgba(0,0,0,.3));z-index:1}.kids-burst{position:absolute;left:15%;top:15%;font-size:2rem;color:#d7b65e}.kids-line{position:absolute;left:13%;right:13%;bottom:18%;height:1px;background:rgba(255,255,255,.5);z-index:1}.kids-art>b{position:relative;z-index:2;font:600 clamp(2.7rem,5vw,4.2rem)/.9 'Teko',sans-serif;text-align:center;letter-spacing:.05em;text-shadow:0 3px 15px rgba(0,0,0,.45)}.kids-copy p:not(.section-kicker){font-size:.91rem;color:#605e57;line-height:1.65;max-width:390px;margin:14px 0 21px}.kids-copy h2{margin-bottom:13px}.kids-copy .button{min-width:188px}
.calendar-section{background:var(--paper)}.calendar-shell{background:#fff;padding:26px 28px 22px;border:1px solid #e5e1d8;border-radius:5px;box-shadow:0 8px 24px rgba(45,38,21,.035)}.calendar-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid #eeeae3;gap:20px}.month-controls{display:flex;align-items:center;gap:14px}.month-controls h3{font-family:'Teko',sans-serif;text-transform:capitalize;font-size:1.42rem;font-weight:500;margin:0;min-width:166px;text-align:center}.icon-button{border:1px solid var(--line);background:#fff;border-radius:3px;width:34px;height:34px;font-size:1.3rem;line-height:1;cursor:pointer;color:var(--ink)}.icon-button:hover{background:var(--ink);color:#fff}.legend{display:flex;gap:17px;flex-wrap:wrap}.legend span{font-size:.72rem;color:#65645e;display:flex;align-items:center;gap:7px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.training{background:var(--red)}.special{background:var(--gold)}.free{background:var(--green)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:17px 0 9px;text-align:center;color:#89877f;font-size:.67rem;font-weight:700}.calendar-days{gap:4px}.day{min-height:67px;padding:8px;border:1px solid #f0eee9;border-radius:2px;color:#5b5a54;font-size:.8rem;position:relative}.day small{display:block;margin-top:5px;font-size:.61rem;line-height:1.2;color:inherit}.day.training{background:#fff2f3;border-color:#f7dce0}.day.special{background:#f9f3e7;border-color:#eee1c2}.day.free{background:#f0f5ef;border-color:#dce8da}.day.empty{border-color:transparent}.agenda-notice{margin-top:18px;background:var(--paper);display:flex;align-items:flex-start;gap:11px;padding:13px 15px;color:#66645e;border-radius:3px}.agenda-notice p{font-size:.75rem;line-height:1.55;margin:0}.agenda-notice strong{color:var(--ink)}.notice-icon{flex:0 0 19px;height:19px;border-radius:50%;background:var(--gold);color:white;text-align:center;font-size:.75rem;font-weight:700}.calendar-caption{font-size:.71rem;color:#77766f;margin:13px 0 0}
.gallery-section{background:#fff}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo-placeholder{aspect-ratio:1.55;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border-radius:4px;overflow:hidden;border:1px solid #e4dfd2;color:#fff;background:linear-gradient(145deg,#273a30,#17221d)}.photo-placeholder:before{content:"";position:absolute;inset:48% -8% -35%;transform:skewY(-8deg);background:repeating-linear-gradient(90deg,rgba(238,243,222,.07) 0 14%,transparent 14% 28%),linear-gradient(180deg,#3c7044,#173d27)}.photo-placeholder>span,.photo-placeholder>small{position:relative;z-index:1}.photo-placeholder>span{font-size:2rem;color:#e0c16d}.photo-placeholder>small{padding:5px 8px;background:rgba(10,13,11,.62);border-radius:2px;font-size:.62rem;letter-spacing:.04em}.grill-photo{background:linear-gradient(145deg,#40342b,#171714)}.team-photo{background:linear-gradient(145deg,#374f4a,#1d2823)}.table-photo{background:linear-gradient(145deg,#564232,#211a17)}.kids-photo{background:linear-gradient(145deg,#405043,#1a2b20)}.bar-photo{background:linear-gradient(145deg,#3c4240,#171d1a)}
.location-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center;background:#f2efe7}.location-copy h2{margin-bottom:12px}.location-copy>p:not(.section-kicker){color:#5f5d55;font-size:.86rem;margin-bottom:19px}.contact-details{border-top:1px solid #dcd7cb}.contact-details article{display:grid;grid-template-columns:37px 1fr;gap:13px;padding:15px 0;border-bottom:1px solid #dcd7cb;align-items:start}.contact-details article>span{font-size:1.2rem;color:var(--gold-dark)}.contact-details strong{font-size:.73rem;text-transform:uppercase;letter-spacing:.045em}.contact-details p{font-size:.78rem;line-height:1.5;color:#5e5c55;margin:4px 0 0}.contact-details small{font-size:.68rem;color:var(--muted)}
.site-footer{padding:22px 5vw;display:flex;align-items:center;gap:22px;background:#fff;color:#514f49;border-top:1px solid var(--line)}.footer-brand img{width:140px;height:62px;object-fit:contain;display:block}.site-footer>p{font-size:.72rem;margin:0}.social-links{display:flex;align-items:center;gap:16px;margin-left:auto}.social-links a{font-size:.68rem;text-decoration:none;color:#4f4d47;display:flex;align-items:center;gap:5px}.social-links a:hover{color:var(--gold-dark)}.social-links span{font-size:1.1rem;color:var(--gold-dark);font-weight:700}
@media(max-width:940px){.site-header{padding:0 3vw;gap:13px}.brand img{width:170px;height:82px;transform:translateY(10px)}.site-header nav{gap:11px}.site-header nav a{font-size:.61rem}.site-header nav .nav-reserve{padding:10px 13px}.section{padding-left:5vw;padding-right:5vw}.menu-categories{grid-template-columns:repeat(3,1fr)}.hero{padding-left:6vw;padding-right:6vw}}
@media(max-width:680px){.site-header{height:68px;padding:0 4vw}.brand img{width:122px;height:74px;transform:translateY(9px)}.site-header nav{gap:11px;overflow-x:auto;scrollbar-width:none}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{font-size:.56rem}.site-header nav .nav-reserve{padding:9px 11px}.hero{min-height:570px;padding:53px 7vw 45px;align-items:center}.hero h1{font-size:clamp(2.9rem,11.5vw,4.8rem)}.hero-image-note{right:5%;bottom:3%;font-size:.5rem}.section{padding:56px 6vw}.section-heading{align-items:flex-start;flex-direction:column;gap:11px}.team-grid{gap:9px}.team-card{padding:16px 8px;min-height:135px}.team-card h3{font-size:1.05rem}.icon-wrap{width:46px;height:46px}.menu-categories{gap:8px}.menu-categories article{min-height:118px;padding:12px 5px}.menu-categories h3{font-size:.84rem}.kids-section{grid-template-columns:1fr;gap:25px}.kids-art{min-height:245px;order:2}.kids-copy{order:1}.calendar-shell{padding:18px 12px}.calendar-top{align-items:flex-start;flex-direction:column}.legend{gap:10px}.day{min-height:54px;padding:5px;font-size:.73rem}.day small{font-size:.53rem}.photo-grid{grid-template-columns:repeat(2,1fr);gap:8px}.photo-placeholder{aspect-ratio:1.35}.location-section{grid-template-columns:1fr;gap:25px}.site-footer{flex-wrap:wrap;gap:10px 16px;padding:19px 5vw}.footer-brand img{width:105px;height:48px}.site-footer>p{font-size:.65rem}.social-links{width:100%;margin:3px 0 0;justify-content:space-between;gap:8px}}
@media(max-width:390px){.site-header{gap:7px}.brand img{width:104px;height:68px;transform:translateY(8px)}.site-header nav{gap:9px}.site-header nav a{font-size:.52rem}.site-header nav .nav-reserve{padding:8px 9px}.hero h1{font-size:2.85rem}.quick-services{grid-template-columns:repeat(5,90px)}.menu-categories{grid-template-columns:repeat(2,1fr)}.month-controls{gap:8px}.month-controls h3{min-width:140px;font-size:1.22rem}.legend span{font-size:.63rem}.calendar-weekdays{font-size:.58rem}.social-links a{font-size:.61rem}}

/* Imagen principal del complejo aportada para el borrador */
.hero-image{background:none}
.hero-image:before{content:none}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 56%}
.hero-image:after{z-index:0}

/* Imagen de ambiente para el bloque de cumpleaños */
.kids-photo-feature{margin:0;background:#18251c}
.kids-photo-feature:before{content:none}
.kids-photo-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.kids-photo-feature figcaption{position:absolute;right:12px;bottom:12px;z-index:2;padding:6px 9px;border-radius:3px;background:rgba(17,23,19,.72);color:#fff;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
body.admin-preview [data-content-key]{cursor:pointer;outline:1px dashed transparent;outline-offset:3px}body.admin-preview [data-content-key]:hover{outline-color:#e2ad36}body.admin-preview [contenteditable="true"]{outline:2px solid #e2ad36;background:#fff9e7;cursor:text}

/* Tres accesos principales del borrador */
.button-light{background:#fff;color:var(--ink);box-shadow:0 2px 12px rgba(0,0,0,.16)}
.hero-actions{gap:12px}
.hero-actions .button{min-width:170px}
@media(max-width:680px){.hero-actions{display:grid;grid-template-columns:1fr;max-width:310px}.hero-actions .button{width:100%;min-height:49px}}

/* El calendario distingue disponibilidad confirmada de fechas que solo se consultan. */
.day.selectable-date{cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.day.request-date{border-style:dashed;background:#fff;color:#514f49}
.day.request-date::after{content:'Solicitar';display:block;margin-top:5px;font-size:.55rem;line-height:1;color:#916d28;font-weight:700}
.day.selectable-date:hover,.day.selectable-date:focus-visible{outline:2px solid var(--gold);outline-offset:1px;background:#f7f0df;transform:translateY(-1px)}
.day.confirmed-free:hover,.day.confirmed-free:focus-visible{background:#e2efdf}
.dot.request{background:#fff;border:1px dashed var(--gold-dark)}
.day.training:not(.past-date){background:#f7dadd;border:2px solid #c95262;color:#741a28;font-weight:800;box-shadow:inset 0 0 0 1px rgba(116,26,40,.08)}
.day.special:not(.past-date){background:#f5e5bd;border:2px solid #bd8a20;color:#69480b;font-weight:800;box-shadow:inset 0 0 0 1px rgba(105,72,11,.08)}
.day.occupied-date small{font-weight:800;text-transform:uppercase;letter-spacing:.015em}
.day.past-date{background:#e2e1de!important;border:1px solid #aaa8a2!important;color:#696761!important;cursor:not-allowed;box-shadow:inset 0 0 0 1px rgba(45,44,40,.08)}
.day.past-date>span:first-child{text-decoration:line-through;text-decoration-color:#8f302e;text-decoration-thickness:1.5px}
.team-card-with-photo{position:relative;overflow:hidden;padding:0;justify-content:flex-end;color:#fff}.team-card-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 56%}.team-card-with-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,13,9,.8),transparent 72%);pointer-events:none}.team-card-with-photo h3{position:relative;z-index:1;width:100%;margin:0;padding:18px 10px 15px;text-align:center;color:#fff;text-shadow:0 1px 4px #000}
.photo-placeholder[data-has-image="true"]::before{display:none}.photo-placeholder>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
