:root{--mint:#d8efe1;--mint-dark:#bddbc9;--ink:#243129;--paper:#fbfaf5;--warm:#c77d5c;--line:#d9ded8;--muted:#66716a;--white:#fff;--shadow:0 18px 50px rgba(37,64,48,.12);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(160deg,#fff 0 30%,#eff7f1 100%)}button,input{font:inherit}button,a{touch-action:manipulation}.topbar{height:88px;padding:14px max(20px,calc((100vw - 1080px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.86);border-bottom:1px solid rgba(36,49,41,.08);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:block;width:220px;height:58px;overflow:hidden}.brandmark{display:block;width:100%;height:100%;background:url('/logos.jpg') right top/200% 200% no-repeat}.quiet-link{color:var(--ink);font-size:.88rem;text-underline-offset:4px}main{width:min(1080px,100%);margin:auto;padding:54px 24px 80px}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:end;margin-bottom:36px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:750;color:#54715f}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.4rem,6vw,5rem);line-height:.98;margin:.35rem 0 1rem;max-width:770px}.hero p{font-size:1.08rem;line-height:1.65;color:var(--muted);max-width:680px}.deposit-card{background:var(--mint);border-radius:28px;padding:26px;box-shadow:var(--shadow)}.deposit-card strong{font-family:Georgia,serif;font-size:3.1rem;font-weight:400}.deposit-card span{display:block;margin-top:4px;color:#486353}.steps{display:flex;gap:8px;margin:0 0 24px;padding:0;list-style:none}.steps li{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.86rem}.steps li::before{content:attr(data-step);display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;background:white;font-size:.74rem}.steps li.active{color:var(--ink);font-weight:700}.steps li.active::before{background:var(--ink);color:white;border-color:var(--ink)}.panel{background:rgba(255,255,255,.92);border:1px solid rgba(36,49,41,.09);border-radius:28px;padding:clamp(22px,4vw,40px);box-shadow:var(--shadow);margin:20px 0}.panel h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:0 0 8px}.subtle{color:var(--muted);line-height:1.55}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.choice{border:1px solid var(--line);border-radius:20px;background:#fff;text-align:left;padding:20px;cursor:pointer;color:var(--ink);transition:.18s}.choice:hover,.choice.selected{border-color:#668b73;background:var(--mint);transform:translateY(-1px)}.choice strong{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;display:block}.choice small{color:var(--muted);display:block;margin-top:7px;line-height:1.45}.monthbar{display:flex;align-items:center;justify-content:space-between;margin:8px 0 20px}.monthbar h2{text-transform:capitalize;margin:0}.iconbtn{width:43px;height:43px;border:1px solid var(--line);background:white;border-radius:50%;cursor:pointer;font-size:1.25rem;color:var(--ink)}.days{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.day{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fff}.day-date{font-weight:750;text-transform:capitalize;margin-bottom:12px}.turns{display:flex;gap:8px;flex-wrap:wrap}.turn{border:0;border-radius:999px;background:#edf5ef;color:var(--ink);padding:10px 14px;cursor:pointer}.turn:hover,.turn.selected{background:var(--ink);color:white}.empty{text-align:center;padding:34px;border:1px dashed var(--line);border-radius:18px;color:var(--muted);grid-column:1/-1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.84rem;font-weight:750}.field input{border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:#fff;color:var(--ink)}.field input:focus{outline:3px solid rgba(107,151,120,.18);border-color:#6b9778}.checkbox{display:flex;gap:11px;align-items:flex-start;margin-top:8px;color:var(--muted);line-height:1.45;font-size:.9rem}.checkbox input{margin-top:4px}.summary{background:var(--mint);border-radius:18px;padding:18px;margin:0 0 20px;display:flex;justify-content:space-between;gap:20px}.summary strong{display:block}.summary span{color:#486353}.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:var(--ink);color:white;padding:14px 23px;text-decoration:none;font-weight:750;cursor:pointer;min-height:50px}.primary:hover{background:#3c5445}.primary:disabled{opacity:.55;cursor:wait}.secondary{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:999px;color:var(--ink);background:white;padding:12px 20px;text-decoration:none;font-weight:700;cursor:pointer}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.notice{border-radius:16px;padding:14px 17px;margin:18px 0;background:#fff3dc;color:#69522c}.notice.demo{background:#eef3ff;color:#3f4e70}.error{color:#9b3f35;margin:12px 0}.success{text-align:center;max-width:700px;margin:40px auto}.check{width:76px;height:76px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;background:var(--mint);font-size:2rem}.success h1{font-family:Georgia,serif;font-size:clamp(2.4rem,6vw,4rem);font-weight:400;margin:.2em 0}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.status{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff}.status b{display:block;margin-bottom:5px}.ok{color:#2f7749}.pending{color:#9b5f23}.slot-editor{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:end}.slot-editor input{border:1px solid var(--line);border-radius:12px;padding:12px}.data-list{display:grid;gap:10px;margin-top:18px}.data-row{display:grid;grid-template-columns:1.1fr .9fr 1.4fr auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding:13px 0}.badge{border-radius:999px;padding:6px 10px;background:#edf5ef;font-size:.78rem;white-space:nowrap}.badge.paid{background:var(--mint)}.badge.held{background:#fff3dc}footer{padding:34px 24px 46px;display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.82rem}footer strong{width:100%;text-align:center;color:var(--ink);font-size:.72rem;letter-spacing:.16em}footer a{color:#9b673e;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-decoration:none}footer a:hover{text-decoration:underline;text-underline-offset:4px}footer span{width:100%;text-align:center}
.booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.badge.cancelled{background:#f0f2f0;color:var(--muted)}.danger-link{border:0;background:transparent;color:#9b3f35;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-weight:700;padding:7px}.confirm-dialog{width:min(560px,calc(100% - 32px));border:0;border-radius:26px;padding:30px;color:var(--ink);box-shadow:0 28px 90px rgba(24,34,28,.3)}.confirm-dialog::backdrop{background:rgba(25,34,29,.62);backdrop-filter:blur(4px)}.confirm-dialog h2{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:8px 0}.danger-notice{display:grid;gap:7px;background:#fff0ec;color:#743b32;border:1px solid #ebc3ba;border-radius:16px;padding:16px;margin:20px 0}.danger-notice span{line-height:1.5}.confirm-check{display:flex;align-items:flex-start;gap:10px;line-height:1.45;font-weight:650}.confirm-check input{margin-top:4px}.danger-button{border:0;border-radius:999px;background:#9b3f35;color:#fff;padding:13px 20px;font-weight:750;cursor:pointer}.danger-button:disabled{opacity:.45;cursor:not-allowed}.unlock-success{color:#2f7749;font-weight:700;line-height:1.5}
@media(max-width:760px){.topbar{height:76px}.brand{width:175px;height:48px}.quiet-link{font-size:.78rem}main{padding:34px 16px 64px}.hero{grid-template-columns:1fr}.deposit-card{display:flex;align-items:center;gap:14px;padding:18px}.deposit-card strong{font-size:2.2rem}.choice-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.days{grid-template-columns:1fr}.steps{overflow:auto}.steps li{white-space:nowrap}.admin-head{align-items:flex-start;flex-direction:column}.status-grid{grid-template-columns:1fr}.slot-editor{grid-template-columns:1fr 1fr}.slot-editor .field{grid-column:1/-1}.data-row{grid-template-columns:1fr auto}.data-row span:nth-child(3){grid-column:1/-1}.summary{flex-direction:column;gap:8px}.confirm-dialog{padding:22px}.confirm-dialog .actions>*{width:100%}.booking-actions{justify-content:flex-end}}
.centered{justify-content:center}.contract-head{max-width:760px;margin:0 auto 28px;text-align:center}.contract-head h1{font-family:Georgia,serif;font-size:2.6rem;color:var(--green);margin:.35rem 0}.contract-view{padding:0;overflow:hidden}.contract-view>div{padding:28px 32px 18px}.contract-view iframe{display:block;width:100%;height:72vh;min-height:520px;border:0;border-top:1px solid var(--line);background:#f5f5f2}.contract-form{display:grid;gap:22px;margin-top:22px}.contract-form .panel{margin:0}.contract-form select{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:white;color:var(--green);font:inherit}.contract-form .field{margin-top:18px}.booking-contract-summary{display:flex;justify-content:space-between;gap:18px;margin-top:22px;padding:16px 18px;background:var(--mint);border-radius:14px}.booking-contract-summary span{color:var(--muted)}.contract-check{margin-top:18px;align-items:flex-start}.contract-options{border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:20px}.contract-options legend{padding:0 8px;font-weight:700;color:var(--green)}.contract-options label{display:block;margin:12px 0}.contract-options input{margin-right:8px}.contract-form canvas{display:block;width:100%;height:auto;max-height:240px;touch-action:none;border:2px dashed #87a896;border-radius:14px;background:#fff;margin:18px 0 12px}.compact{padding:9px 14px}.final-accept{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:760px){.contract-head{padding:4px 8px}.contract-head h1{font-size:2rem}.contract-view>div{padding:22px 20px 14px}.contract-view iframe{height:58vh;min-height:420px}.booking-contract-summary{flex-direction:column}.contract-form .panel{padding:24px 20px}.contract-form canvas{height:150px}}
.contract-source-fields{display:none!important}.contract-form>.contract-pages{padding:18px;background:#eef2ee;border-radius:22px}.contract-pages{display:grid;gap:22px}.contract-page{position:relative;width:min(100%,820px);margin:auto;background:#fff;box-shadow:0 8px 26px rgba(35,49,41,.12)}.contract-page>img{display:block;width:100%;height:auto}.doc-input{position:absolute;border:0!important;border-radius:3px!important;padding:0 3px!important;background:rgba(216,239,225,.38)!important;color:#174633!important;line-height:1.2;font-size:clamp(7px,1.38vw,14px);height:2.2%;min-width:0;outline:none}.doc-input:focus{box-shadow:0 0 0 2px #5b856b;background:rgba(216,239,225,.72)!important}.doc-family{left:24%;top:64.2%;width:55%}.doc-dni{left:20%;top:67.2%;width:58%}.doc-phone{left:21.5%;top:70.3%;width:57%}.doc-email{left:18%;top:73.3%;width:60%}.doc-children{left:33%;top:76.2%;width:45%}.doc-date{position:absolute;left:39.5%;top:83.1%;color:#174633;font-size:clamp(7px,1.38vw,14px);background:rgba(216,239,225,.38);padding:1px 3px}.doc-choice{position:absolute;display:grid;place-items:center;cursor:pointer;width:3.2%;height:2.3%;border-radius:50%}.doc-choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.doc-choice span,.doc-static-x{display:none;color:#174633;font-weight:900;font-style:normal;font-size:clamp(13px,2.1vw,23px);line-height:1;pointer-events:none}.doc-choice input:checked+span,.doc-static-x{display:block}.doc-choice:focus-within{outline:2px solid #5b856b;outline-offset:2px}.doc-stage-months{left:13.2%;top:15.4%}.doc-stage-years{left:13.2%;top:17.55%}.doc-stage-childhood{left:13.2%;top:19.65%}.doc-stage-communion{left:13.2%;top:21.8%}.doc-collection-petena{left:19.8%;top:41.35%}.doc-collection-mediana{left:43.6%;top:41.35%}.doc-collection-jande{left:72.1%;top:41.35%}.doc-ngo-theodora{left:35%;top:67.8%}.doc-ngo-jugueterapia{left:54%;top:67.8%}.doc-album-minimal{left:14.3%;top:80.65%}.doc-album-normal24{left:14.3%;top:83.05%}.doc-album-normal28{left:14.3%;top:85.45%}.doc-consent-accepted{left:9.5%;top:17.8%}.doc-consent-whatsapp{left:9.5%;top:22.1%}.doc-consent-service{position:absolute;left:10.2%;top:25.8%}.doc-portfolio-yes{left:16.2%;top:57%}.doc-portfolio-no{left:16.2%;top:61%}.doc-consent-third{left:9.5%;top:71.1%}.contract-form canvas.doc-signature{position:absolute;left:9%;top:80.2%;width:41%;height:9.5%;margin:0;max-height:none;border:1px dashed #87a896;border-radius:5px;background:rgba(255,255,255,.72);z-index:2}.doc-clear-signature{position:absolute;left:10%;top:90.5%;z-index:3;padding:5px 10px;font-size:clamp(7px,1.15vw,12px);min-height:0}.contract-submit{margin-top:0!important}.contract-submit .final-accept{margin-top:0}.contract-submit .actions{justify-content:center}.contract-submit .primary{font-size:1rem}
@media(max-width:760px){.contract-form>.contract-pages{padding:8px;gap:12px}.contract-page{box-shadow:0 4px 14px rgba(35,49,41,.12)}.doc-input{font-size:clamp(5px,1.65vw,10px);padding:0 1px!important}.doc-date{font-size:clamp(5px,1.65vw,10px)}.doc-choice span,.doc-static-x{font-size:clamp(9px,2.6vw,15px)}.contract-submit{padding:22px 20px!important}.contract-submit .primary{width:100%}}
.contract-form>.contract-pages{gap:38px;padding:28px;background:linear-gradient(145deg,#e7f2e9,#f7f4ec);border:1px solid #d7e1d8}.contract-page{border:1px solid rgba(36,49,41,.14);border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(35,49,41,.14)}.contract-page::before{content:attr(data-title);position:absolute;z-index:5;top:16px;left:16px;padding:8px 13px;border-radius:999px;background:#214d3a;color:#fff;font-size:clamp(8px,1.15vw,12px);font-weight:800;letter-spacing:.04em}.contract-page::after{content:"Página " attr(data-page) " de 5";position:absolute;z-index:5;top:18px;right:18px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.9);color:#486353;font-size:clamp(7px,1vw,11px);font-weight:750;box-shadow:0 2px 8px rgba(35,49,41,.08)}.doc-input{height:2.55%;border:1.5px solid #6f9b7d!important;border-radius:7px!important;background:rgba(245,252,247,.96)!important;box-shadow:0 2px 7px rgba(35,76,53,.12);padding:0 7px!important}.doc-input::placeholder{color:#769181;opacity:1}.doc-input:focus{box-shadow:0 0 0 3px rgba(91,133,107,.28),0 3px 10px rgba(35,76,53,.16);background:#fff!important}.doc-date{border:1.5px solid #6f9b7d;border-radius:7px;background:rgba(245,252,247,.96);box-shadow:0 2px 7px rgba(35,76,53,.12);padding:3px 8px}.doc-choice{width:3.7%;height:2.65%;background:rgba(255,255,255,.94);border:1.5px solid #6f9b7d;box-shadow:0 2px 6px rgba(35,76,53,.13);transition:.15s}.doc-choice:hover{transform:scale(1.12);background:#e7f4ea}.doc-choice:has(input:checked){background:#d8efe1;border-color:#214d3a}.contract-form canvas.doc-signature{border:2px solid #6f9b7d;background:rgba(245,252,247,.97);box-shadow:0 3px 12px rgba(35,76,53,.12)}.doc-clear-signature{background:rgba(255,255,255,.95)}.contract-submit{background:linear-gradient(145deg,#fff,#edf7ef);border-color:#d0dfd3}.contract-submit .final-accept{background:#fff;border:1px solid #d8e3da;border-radius:14px;padding:16px;margin:0;align-items:center}.contract-submit .final-accept input{accent-color:#214d3a}
.doc-choice input[name^="doc-"]{pointer-events:none}
@media(max-width:760px){.contract-form>.contract-pages{padding:8px;gap:18px}.contract-page{border-radius:12px}.contract-page::before{top:7px;left:7px;padding:5px 8px}.contract-page::after{top:8px;right:8px;padding:4px 7px}.doc-input{height:2.8%;border-width:1px!important;border-radius:4px!important;padding:0 3px!important}.doc-date{border-width:1px;border-radius:4px;padding:1px 3px}.doc-choice{width:4.2%;height:3%;border-width:1px}.contract-submit .final-accept{padding:13px}}
.contract-view{max-width:860px;margin:20px auto}.contract-view>.contract-pages{display:block;padding:0 32px 32px;background:linear-gradient(145deg,#edf5ef,#f8f5ee)}.contract-view .contract-page{display:none;width:min(100%,690px);margin:0 auto;border-radius:18px}.contract-view .contract-page.active{display:block}.contract-pager{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 24px!important;border-top:1px solid var(--line);position:sticky;top:88px;z-index:7;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);box-shadow:0 8px 20px rgba(35,49,41,.08)}.contract-pager strong{min-width:180px;text-align:center;color:#486353}.contract-pager .iconbtn:disabled{opacity:.35;cursor:not-allowed}.contract-form{max-width:820px;margin:24px auto 0}.contract-form>.panel{border-radius:24px}.contract-form>.panel:hover{border-color:#cad9ce}.contract-form select:focus{outline:3px solid rgba(107,151,120,.18);border-color:#6b9778}
@media(max-width:760px){.contract-view>.contract-pages{padding:0 8px 14px}.contract-pager{top:76px;gap:8px;padding:9px 8px!important;flex-wrap:wrap}.contract-pager strong{min-width:130px;font-size:.8rem}.contract-pager #contractFill{width:100%;margin-top:2px}.contract-view .contract-page{border-radius:10px}}
.digital-contract{max-width:900px;margin:auto;display:grid;gap:22px}.digital-cover{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 34px;background:linear-gradient(135deg,#d8efe1,#f6f0e5);border:1px solid #cbdcce;border-radius:28px;box-shadow:var(--shadow)}.digital-cover .brandmark{width:250px;height:86px;flex:none}.digital-cover>div:last-child{display:grid;gap:5px;text-align:right}.digital-cover span{color:#54715f;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.digital-cover strong{font:1.45rem Georgia,serif}.digital-cover small{color:#486353}.contract-section{display:grid;grid-template-columns:58px 1fr;gap:20px;background:rgba(255,255,255,.95);border:1px solid rgba(36,49,41,.1);border-radius:28px;padding:clamp(24px,4vw,42px);box-shadow:var(--shadow)}.section-number{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:#315b43;font-weight:850}.contract-section h2{font:400 clamp(1.8rem,4vw,2.5rem) Georgia,serif;margin:.35rem 0 1.2rem}.contract-section h3{text-transform:uppercase;letter-spacing:.04em;font-size:.92rem;margin:1.6rem 0 .5rem}.contract-section .field input{border:1px solid #b9ccbe;border-radius:13px;padding:14px;background:#fbfdfa}.spaced{margin-top:32px!important}.option-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.option-card,.collection-card{position:relative;display:grid;gap:6px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer}.option-card input,.collection-card input{position:absolute;opacity:0}.option-card:has(input:checked),.collection-card:has(input:checked){border-color:#315b43;background:var(--mint);box-shadow:0 0 0 2px #315b43}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.collection-card strong{font:1.35rem Georgia,serif}.collection-card span{font-weight:700}.collection-card small{color:var(--muted);min-height:42px}.collection-card b{margin-top:8px}.two-columns,.terms-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.two-columns fieldset{border:1px solid var(--line);border-radius:18px;padding:18px}.two-columns legend{font-weight:800;padding:0 7px}.two-columns label,.mint-copy label{display:block;margin:11px 0}.legal-copy{line-height:1.65}.legal-copy p{color:#465149}.check-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:15px;margin:10px 0;background:#fff;cursor:pointer}.check-card:has(input:checked){background:#edf7ef;border-color:#799a82}.check-card input,.mint-copy input{accent-color:#214d3a;margin-top:3px}.mint-copy{background:var(--mint);border-radius:20px;padding:24px;margin:22px 0}.mint-copy h3{margin-top:0}.digital-contract canvas{display:block;width:100%;height:auto;max-height:240px;touch-action:none;border:2px dashed #87a896;border-radius:14px;background:#fff;margin:18px 0 12px}.digital-contract .final-accept{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:760px){.digital-cover{flex-direction:column;padding:22px;text-align:center}.digital-cover .brandmark{width:220px;height:72px}.digital-cover>div:last-child{text-align:center}.contract-section{grid-template-columns:1fr;padding:24px 20px}.section-number{width:38px;height:38px}.option-grid,.collection-grid,.two-columns,.terms-grid{grid-template-columns:1fr}.collection-card small{min-height:0}}
.reservation-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.reservation-summary div{display:grid;gap:4px;padding:18px 20px;border-radius:17px;background:var(--mint);border:1px solid #bfd6c5}.reservation-summary span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#587263;font-weight:800}.reservation-summary strong{font:1.12rem Georgia,serif;color:#244b37}.reservation-summary small{color:#587263;margin-top:2px}@media(max-width:620px){.reservation-summary{grid-template-columns:1fr}}
.top-actions{display:flex;align-items:center;gap:18px}.christmas-link{display:inline-flex;align-items:center;min-height:38px;padding:8px 14px;border-radius:999px;background:#163f31;color:#fff;text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.04em}.christmas-link:hover{background:#0f3226}.christmas-entry{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:-4px 0 34px;padding:20px 24px;border-radius:24px;background:linear-gradient(125deg,#123d2e,#1d5a43);color:#fff;text-decoration:none;box-shadow:0 18px 44px rgba(18,61,46,.22);overflow:hidden;position:relative}.christmas-entry::after{content:"";position:absolute;width:190px;height:190px;right:-72px;top:-85px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.03),0 0 0 48px rgba(255,255,255,.025)}.christmas-entry-mark{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f1ead7;color:#163f31;font-size:1.25rem}.christmas-entry>span:nth-child(2){display:grid;gap:2px}.christmas-entry small{text-transform:uppercase;letter-spacing:.14em;color:#c9ddcf;font-weight:800}.christmas-entry strong{font:1.6rem Georgia,serif}.christmas-entry em{font-style:normal;color:#e2ece5}.christmas-entry b{font-size:1.4rem;z-index:1}.christmas-page{background:#f4f5ef}.christmas-page .topbar{border-bottom-color:rgba(18,61,46,.13)}.christmas-hero{max-width:930px;margin:0 auto;text-align:center;padding:clamp(48px,8vw,86px) clamp(22px,6vw,70px);border-radius:36px;background:radial-gradient(circle at 50% 8%,rgba(241,234,215,.14),transparent 28%),linear-gradient(150deg,#0f3226,#174b38 58%,#1e6047);color:#fff;box-shadow:0 28px 70px rgba(15,50,38,.23);position:relative;overflow:hidden}.christmas-hero::before,.christmas-hero::after{content:"";position:absolute;border:1px solid rgba(232,240,233,.14);border-radius:50%}.christmas-hero::before{width:360px;height:360px;left:-200px;bottom:-230px;box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 84px rgba(255,255,255,.018)}.christmas-hero::after{width:250px;height:250px;right:-150px;top:-145px;box-shadow:0 0 0 32px rgba(255,255,255,.025)}.christmas-stars{color:#e9dcc0;letter-spacing:.7em;margin-bottom:20px}.christmas-hero .eyebrow{color:#c6dccd}.christmas-hero h1{font:400 clamp(4rem,11vw,7.5rem)/.78 Georgia,serif;margin:.24em 0;color:#fff}.christmas-hero h1 span{font-size:.34em;letter-spacing:.38em;margin-left:.38em;color:#eadfc8}.christmas-hero>p{max-width:590px;margin:28px auto;font-size:1.15rem;line-height:1.7;color:#e0ebe4}.christmas-status{max-width:650px;margin:30px auto 0;padding:22px 24px;border:1px solid rgba(232,240,233,.22);border-radius:22px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);display:grid;gap:6px}.christmas-status span{text-transform:uppercase;letter-spacing:.14em;color:#eadfc8;font-size:.72rem;font-weight:850}.christmas-status strong{font:1.45rem Georgia,serif}.christmas-status p{margin:4px 0 0;color:#d5e3d9;line-height:1.55}.christmas-primary,.christmas-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border-radius:999px;text-decoration:none;font-weight:800;position:relative;z-index:1}.christmas-primary{background:#f1ead7;color:#173d30}.christmas-primary:hover{background:#fff}.christmas-secondary{border:1px solid rgba(255,255,255,.5);color:#fff}.christmas-preparation{max-width:930px;margin:22px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.christmas-preparation div{padding:22px;border-radius:20px;border:1px solid #cedbd1;background:rgba(255,255,255,.9);display:grid;gap:6px}.christmas-preparation span{color:#6b8c79;font-size:.76rem;font-weight:850}.christmas-preparation strong{font:1.35rem Georgia,serif;color:#173d30}.christmas-preparation p{margin:0;color:#637067}.christmas-page footer{color:#4d6557}@media(max-width:700px){.top-actions{gap:9px}.christmas-link{font-size:.7rem;padding:7px 10px}.christmas-entry{grid-template-columns:auto 1fr;padding:18px}.christmas-entry b{display:none}.christmas-entry strong{font-size:1.35rem}.christmas-preparation{grid-template-columns:1fr}.christmas-hero{border-radius:26px;padding-inline:20px}.christmas-hero .actions>*{width:100%}}

.christmas-contract-page{background:#f4f1e8}.christmas-contract-draft{width:min(980px,calc(100% - 32px));margin:54px auto 90px;display:grid;gap:22px}.christmas-contract-cover{position:relative;overflow:hidden;text-align:center;background:linear-gradient(145deg,#0f3226,#1b563f);color:#fff;border-radius:34px;padding:64px 48px}.christmas-contract-cover h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5.3rem);line-height:.98;font-weight:400;max-width:800px;margin:24px auto 18px}.christmas-contract-cover p{font-size:1.15rem;color:#e9dfc5}.draft-tag{display:inline-flex;margin-top:20px;border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.1);border-radius:999px;padding:9px 15px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.christmas-contract-block{display:grid;grid-template-columns:64px 1fr;gap:26px;background:#fff;border:1px solid rgba(18,61,46,.12);border-radius:28px;padding:42px;box-shadow:0 18px 48px rgba(24,53,41,.07)}.christmas-contract-block h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.15rem);font-weight:400;line-height:1.05;margin:8px 0 24px}.christmas-contract-block .section-number{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#d8efe2;color:#174b38;font-weight:800}.draft-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.draft-fields p{margin:0;border:1px solid #c9d9cf;border-radius:14px;padding:14px 16px;display:grid;gap:8px;background:#fbfdfb}.draft-fields span,.christmas-price span{font-size:.73rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#567063}.draft-fields b{font-family:Georgia,serif;font-size:1.06rem;font-weight:400}.pending-note{display:flex;align-items:flex-start;gap:12px;margin-top:20px;padding:15px 17px;border-radius:14px;background:#fff4d7;border:1px solid #ead18b;color:#614c16}.pending-note strong{white-space:nowrap}.christmas-price{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px 18px;margin:0 0 22px;padding:22px 24px;background:#d8efe2;border-radius:18px;color:#143b2c}.christmas-price strong{grid-row:1/3;grid-column:2;font:400 3rem/1 Georgia,serif}.christmas-price small{font-weight:700}.contract-list{margin:0 0 20px;padding-left:22px;display:grid;gap:9px;line-height:1.55}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.product-grid p{margin:0;display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #c9d9cf;border-radius:14px;padding:16px}.product-grid span{font-family:Georgia,serif;font-size:1.25rem;white-space:nowrap}.draft-choice{display:flex;justify-content:space-between;gap:28px;padding:17px 0;border-bottom:1px solid #dce5df;line-height:1.45}.draft-choice b{text-align:right;color:#285c46}.christmas-contract-footer{text-align:center;background:#123d2e;color:#fff;border-radius:28px;padding:30px}.christmas-contract-footer p{color:#e9dfc5}.christmas-preparation a{color:inherit;text-underline-offset:4px}.christmas-preparation a:hover{color:#896f31}@media(max-width:700px){.christmas-contract-draft{width:min(100% - 20px,980px);margin:28px auto 60px}.christmas-contract-cover{padding:48px 20px;border-radius:24px}.christmas-contract-cover h1{font-size:2.75rem}.christmas-contract-block{grid-template-columns:1fr;padding:25px 20px;border-radius:22px;gap:16px}.draft-fields,.product-grid{grid-template-columns:1fr}.pending-note,.draft-choice{display:grid}.pending-note strong{white-space:normal}.draft-choice b{text-align:left}.christmas-price{grid-template-columns:1fr}.christmas-price strong{grid-row:auto;grid-column:auto}.terms-grid{grid-template-columns:1fr}}
.christmas-choice{grid-column:2;position:relative;overflow:hidden;background:linear-gradient(135deg,#123d2e,#1f6048);border-color:#123d2e;color:#fff;min-height:150px}.christmas-choice:hover,.christmas-choice.selected{background:linear-gradient(135deg,#0d2f23,#1b563f);border-color:#0d2f23;box-shadow:0 0 0 3px rgba(18,61,46,.2)}.christmas-choice strong{color:#fff}.christmas-choice small{color:#d7e6dc}.christmas-choice b{display:block;margin-top:12px;color:#f1ead7}.christmas-choice-star{position:absolute;right:20px;top:16px;color:#eadfc8;font-size:1.35rem}.deposit-card small,.summary small{display:block;margin-top:5px;color:#486353}.iconbtn:disabled{opacity:.28;cursor:not-allowed}
@media(max-width:760px){.christmas-choice{grid-column:auto}}
.calendar-day small{line-height:1.15;text-align:center}.christmas-page .calendar-day small{font-size:.62rem;max-width:70px}
.simplified-contract .short-intro{margin:-8px 0 20px;color:var(--muted)}.essential-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.essential-summary p{display:grid;gap:4px;margin:0;padding:16px;border:1px solid #d8e3da;border-radius:15px;background:#f9fcfa}.essential-summary strong{color:#214d3a}.essential-summary span{color:#59665f}.rights-contact{margin:18px 0 0!important}.contract-details{margin-top:18px;border:1px solid #cddbd0;border-radius:16px;background:#fff;overflow:hidden}.contract-details summary{cursor:pointer;padding:16px 18px;font-weight:800;color:#214d3a}.contract-details[open] summary{border-bottom:1px solid #dbe5dd;background:#f4f8f5}.contract-details>div{padding:4px 18px 18px}.check-card span{display:grid;gap:4px}.check-card small{color:var(--muted);line-height:1.45}.required-choice{border-color:#9db7a4}.essential-terms p{margin:0;padding:17px;border-radius:15px;background:#f5faf6;border:1px solid #d9e6dc}.short-closing{margin:20px 0 0!important;color:#465149}.simplified-contract .mint-copy p{margin-top:0}
@media(max-width:760px){.essential-summary{grid-template-columns:1fr}}
.christmas-payment-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px}.christmas-payment-summary p{display:grid;gap:5px;margin:0;padding:16px;border:1px solid #c9d9cf;border-radius:14px;background:#fbfdfb}.christmas-payment-summary span{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;color:#567063;font-weight:800}.christmas-payment-summary strong{font:1.18rem Georgia,serif}.unresolved-note,.draft-disabled-sign{display:grid;gap:5px;margin-top:20px;padding:16px 18px;border-radius:15px;background:#fff4d7;border:1px solid #ead18b;color:#614c16}.draft-permission{display:flex;align-items:flex-start;gap:12px;padding:17px;border:1px solid #cbd9ce;border-radius:15px;background:#fff}.draft-permission span{display:grid;gap:4px}.draft-permission small{color:var(--muted)}.draft-publication{margin-top:16px;border:1px solid #cbd9ce;border-radius:17px;padding:18px}.draft-publication legend{font-weight:800;padding:0 8px}.draft-publication p{margin-top:0;color:var(--muted)}.draft-publication label{display:block;margin:12px 0}.draft-publication input,.draft-permission input{accent-color:#174b38}
@media(max-width:700px){.christmas-payment-summary{grid-template-columns:1fr}}
.choice{position:relative}.choice::after{content:"Ver calendario →";display:block;margin-top:14px;font-size:.78rem;font-weight:800;color:#315b43}.choice:hover::after,.choice.selected::after{color:#214d3a}.christmas-choice::after{color:#f1ead7}.christmas-choice:hover::after,.christmas-choice.selected::after{color:#fff}
.choice:focus-visible{outline:3px solid rgba(49,91,67,.28);outline-offset:3px;border-color:#668b73;background:var(--mint);transform:translateY(-1px)}.choice:focus-visible::after{color:#214d3a}.christmas-choice:focus-visible{background:linear-gradient(135deg,#0d2f23,#1b563f);border-color:#0d2f23;outline-color:rgba(18,61,46,.3)}.christmas-choice:focus-visible::after{color:#fff}
.christmas-choice:hover,.christmas-choice:focus-visible,.christmas-choice:active{background:#fff;color:var(--ink);border-color:#668b73;box-shadow:0 0 0 3px rgba(18,61,46,.16)}.christmas-choice:hover strong,.christmas-choice:focus-visible strong,.christmas-choice:active strong,.christmas-choice:hover b,.christmas-choice:focus-visible b,.christmas-choice:active b{color:#173d30}.christmas-choice:hover small,.christmas-choice:focus-visible small,.christmas-choice:active small{color:var(--muted)}.christmas-choice:hover .christmas-choice-star,.christmas-choice:focus-visible .christmas-choice-star,.christmas-choice:active .christmas-choice-star,.christmas-choice:hover::after,.christmas-choice:focus-visible::after,.christmas-choice:active::after{color:#315b43}
.christmas-contract-block canvas{display:block;width:100%;height:auto;max-height:240px;touch-action:none;border:2px solid #6f9b7d;border-radius:14px;background:#fbfdfb;box-shadow:0 3px 12px rgba(35,76,53,.12);margin:18px 0 12px}.christmas-contract-block .final-accept{margin-top:22px;padding:16px;border:1px solid #cbd9ce;border-radius:15px;background:#fbfdfb}.christmas-contract-block .field input{background:#fbfdfb}
@media(max-width:700px){.christmas-contract-block canvas{height:150px}}

/* Identidad compartida con enelcampito.es y Entregas */
:root{--ink:#414844;--brand-dark:#28312c;--sand:#ce9361;--sand-dark:#b77a49;--paper:#fff;--warm:#f7f4f0;--line:#e7e1db;--muted:#747a76;--shadow:0 18px 55px rgba(55,45,38,.07);font-family:"Muli",Arial,sans-serif;background:#fff}
body{background:#fff;color:var(--ink)}
.topbar{height:104px;min-height:104px;padding:10px clamp(22px,6vw,82px);position:relative;background:#fff;border-bottom:1px solid #f0ece8;backdrop-filter:none}
.brand{width:190px;height:78px;display:flex;align-items:center;overflow:visible}
.brand img{display:block;width:190px;height:78px;object-fit:contain}
.top-actions{display:flex;align-items:center;gap:clamp(20px,4vw,48px)}
.top-actions a{font-size:.76rem;font-weight:800;letter-spacing:.17em;text-decoration:none}
.quiet-link{padding:13px 22px;border-radius:40px;background:var(--sand);color:#fff}
.quiet-link:hover{background:var(--sand-dark)}
.christmas-link{color:var(--ink)}
main{width:min(1040px,100%);padding:70px 18px 82px}
.hero{grid-template-columns:1fr auto;gap:44px;align-items:center;margin-bottom:42px}
.eyebrow{color:var(--sand-dark);font-size:.72rem;letter-spacing:.18em}
.hero h1,.panel h2,.success h1,.admin-head h1,.contract-head h1{color:var(--brand-dark);font-family:"Noah Text Medium",Georgia,serif}
.hero h1{font-size:clamp(2.9rem,6vw,5.1rem);line-height:1.04;margin:.25em 0 .3em}
.hero p{max-width:670px;color:var(--muted);line-height:1.75}
.deposit-card{min-width:220px;padding:28px;background:var(--warm);border-left:4px solid var(--sand);border-radius:2px;box-shadow:none}
.deposit-card strong{color:var(--brand-dark);font-size:3rem}.deposit-card span,.deposit-card small{color:var(--muted)}
.steps{margin-bottom:30px}.steps li::before{border-color:var(--line);border-radius:50%}.steps li.active{color:var(--sand-dark)}.steps li.active::before{background:var(--sand);border-color:var(--sand);color:#fff}
.panel{background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:clamp(26px,5vw,52px);margin:26px 0}
.panel h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.08}
.choice{border-color:var(--line);border-radius:3px;padding:24px;box-shadow:none}.choice:hover,.choice.selected,.choice:focus-visible{border-color:var(--sand);background:var(--warm);outline-color:rgba(206,147,97,.25)}.choice::after,.choice:hover::after,.choice.selected::after,.choice:focus-visible::after{color:var(--sand-dark)}
.choice strong{color:var(--brand-dark)}
.primary,.secondary,.iconbtn,.turn{border-radius:40px}.primary{background:var(--sand);border:1px solid var(--sand);color:#fff}.primary:hover{background:var(--sand-dark);border-color:var(--sand-dark)}.secondary{border-color:var(--sand);color:var(--sand-dark)}
.field input,.contract-form select{min-height:52px;border-color:#d9d2cb;border-radius:2px}.field input:focus,.contract-form select:focus{outline:2px solid rgba(206,147,97,.25);border-color:var(--sand)}
.summary{background:var(--warm);border-left:4px solid var(--sand);border-radius:2px}.summary span,.summary small{color:var(--muted)}
.status{border-color:var(--line);border-radius:3px}.badge{border-radius:40px}
.admin-link-panel{border-left:4px solid var(--sand)}
.calendar-panel,.admin-calendar-panel{border-top:4px solid var(--sand)}
.calendar-day{border-radius:3px}.calendar-day.free:hover,.calendar-day.selected{border-color:var(--sand);box-shadow:0 0 0 2px var(--sand)}
.calendar-day.reserved{background:#d8efe1;border-color:#b6d6c1}.turn-picker{border-color:var(--line)}
.admin-calendar-cell{border-radius:3px}.admin-calendar-cell>strong{font-family:"Noah Text Medium",Georgia,serif}
.check{border:2px solid var(--sand);background:#fff;color:var(--sand-dark)}
footer{padding:44px 24px;background:#fff;border-top:1px solid #f0ece8;color:var(--ink);gap:12px}footer strong{color:var(--ink)}footer a{color:var(--sand-dark)}
.confirm-dialog{border-radius:4px}.contract-page{border-radius:4px}.contract-form>.contract-pages{background:var(--warm);border-color:var(--line)}
@media(max-width:760px){.topbar{height:84px;min-height:84px;padding:8px 17px}.brand,.brand img{width:145px;height:65px}.top-actions{gap:9px}.christmas-link{display:none}.quiet-link{padding:11px 15px;font-size:.65rem}main{padding:44px 12px 64px}.hero{grid-template-columns:1fr;gap:20px}.deposit-card{display:block;min-width:0}.panel{padding:26px 20px}.calendar-day{border-radius:2px}}
