:root{--navy:#052e44;--teal:#07536c;--deep:#003a58;--yellow:#ffcc17;--yellow-soft:#ffe27b;--orange:#ff9b00;--red:#e81239;--blue:#067bc1;--ink:#052a43;--paper:#fffaf6;--green:#079628;--radius:28px;--shadow:0 12px 34px rgba(5,42,67,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff9ef;color:var(--ink);font-family:'Trebuchet MS',system-ui,-apple-system,'Segoe UI',Arial,sans-serif}a{color:inherit}button{font:inherit}img{max-width:100%}.wrap{width:min(1120px,calc(100% - 36px));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:200;padding:12px}.preview{background:#fff1ac;color:#3e3400;text-align:center;font-weight:900;font-size:.77rem;letter-spacing:.05em;padding:9px 15px}.topbar{background:linear-gradient(110deg,#00334b,#006179 52%,#00344f);color:white;box-shadow:0 6px 14px #00384d25}.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:75px}.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:clamp(1.25rem,2.5vw,1.9rem);font-weight:950;letter-spacing:-1.4px;white-space:nowrap}.brand .heart{color:var(--yellow);font-size:2.5rem;line-height:1;filter:drop-shadow(0 2px 0 #0003)}.nav{display:flex;align-items:center;gap:12px}.nav a{text-decoration:none;padding:9px 14px;border-radius:99px;font-weight:850;font-size:.9rem}.nav a:hover,.nav a:focus-visible{background:#ffffff22}.nav a.current{background:linear-gradient(#ffe46c,#ffc300);color:var(--navy);box-shadow:inset 0 -3px 0 #e59b00}.case-shell{background:radial-gradient(ellipse at 83% 24%,#fff1c2 0,#fffaf2 44%,#ffe9bb 100%);padding-bottom:0;overflow:hidden}.hero{position:relative;isolation:isolate;min-height:490px}.hero .wrap{position:relative;min-height:490px}.hero-photo{position:absolute;z-index:-2;inset:0 0 0 40%;background-image:none;background-size:cover;background-position:center 39%;border-bottom-left-radius:100px}.hero-photo-overlay{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#fff9f1 0%,rgba(255,249,241,.94) 20%,rgba(255,249,241,.08) 60%,transparent 100%)}.hero-copy{padding:42px 0 20px;max-width:560px}.hero-name{margin:0;color:#003f5a;font-size:clamp(3.6rem,8vw,6.7rem);font-family:'Brush Script MT','Segoe Script',Georgia,serif;font-style:italic;font-weight:900;line-height:.95;letter-spacing:-.06em;text-shadow:1px 2px 0 #c8e1e2}.heart-accent{color:#ef1e42;font-size:3.5rem;display:inline-block;transform:rotate(-18deg);vertical-align:top;font-family:system-ui;font-style:normal}.hero-lastname{font-size:clamp(1.85rem,3.3vw,3.05rem);font-weight:1000;letter-spacing:-.055em;margin:8px 0 6px;line-height:1.05;color:#062b47}.age{display:inline-block;background:var(--yellow);font-size:1.48rem;font-style:italic;font-weight:1000;border-radius:58% 46% 55% 41%;padding:6px 28px;box-shadow:6px 3px 0 #efb900;transform:rotate(-2deg);margin-block:5px 12px}.hero-description{max-width:475px;font-size:clamp(1.08rem,1.85vw,1.45rem);font-weight:750;line-height:1.46;margin:14px 0 0}.banner{display:flex;position:relative;z-index:2;align-items:center;justify-content:center;gap:15px;width:max-content;max-width:95%;padding:11px 30px;background:linear-gradient(175deg,#ff4b65 0%,#e8002b 55%,#bb0025);color:white;font-size:clamp(1.38rem,3vw,2.4rem);font-weight:1000;font-style:italic;transform:rotate(-1.4deg);border-radius:100px;box-shadow:0 6px 0 #fff9,0 10px 18px #ab033020;margin-top:-60px;margin-left:3%;text-shadow:1px 2px #8d001c}.banner .hand{font-style:normal;font-size:2rem;background:#fff;border-radius:50%;padding:4px 10px;box-shadow:0 0 0 3px #fff6}.banner .underline{border-bottom:5px solid var(--yellow);line-height:1.1}.stages{position:relative;margin-top:28px;background:linear-gradient(180deg,#fff,#fffaf4);border-radius:35px;box-shadow:var(--shadow);padding:28px 28px 22px;border:1px solid #ffffff}.stages-grid{display:grid;grid-template-columns:185px repeat(3,minmax(0,1fr));gap:14px;align-items:center}.stages-title{font-size:clamp(1.55rem,2.45vw,2rem);font-weight:1000;line-height:1.04;color:var(--navy);letter-spacing:-.02em}.stages-title:after{content:'';display:block;background:var(--orange);height:6px;width:145px;max-width:80%;border-radius:100px;transform:rotate(-3deg);margin-top:16px}.stage{text-align:center;position:relative;min-width:0;transition:filter .2s,opacity .2s}.stage .medallion{margin:0 auto;display:grid;place-items:center;width:142px;max-width:94%;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 4px 14px #fff9,0 0 0 5px white,0 4px 18px #00567a28;background:radial-gradient(circle at 36% 24%,#fff8ad,#ffc500 75%)}.stage.s2 .medallion{background:radial-gradient(circle at 35% 25%,#b9f6ff,#0699ea 70%,#016bac)}.stage.s3 .medallion{background:radial-gradient(circle at 35% 25%,#fffde0,#ffcc26 73%,#ffb10a)}.stage-icon{width:96px;height:96px;filter:drop-shadow(0 4px 2px #0002)}.stage .tag{z-index:1;position:relative;width:max-content;margin:-8px auto 0;padding:3px 19px;background:white;border:2px solid #f2bd36;border-radius:80px;font-weight:1000;box-shadow:0 3px 5px #0002}.stage.s2 .tag{border-color:#009bed}.stage.s3 .tag{border-color:#ffc521}.stage .stage-caption{margin:0 auto;background:linear-gradient(#ffe96a,#ffc700);color:#052840;border-radius:19px;min-height:65px;padding:12px 8px 9px;font-weight:950;font-size:clamp(.9rem,1.55vw,1.08rem);line-height:1.12;max-width:215px}.stage.s2 .stage-caption{color:white;background:linear-gradient(#1595d7,#00639f)}.stage.s3 .stage-caption{background:linear-gradient(#fff3a7,#ffd451)}.stage.is-future{opacity:.43;filter:grayscale(.28)}.stage.is-active{filter:drop-shadow(0 0 6px #ffa90140)}.stage.is-done:after{content:'✓';position:absolute;top:82px;left:calc(50% + 43px);display:grid;place-items:center;background:#13bd43;color:white;font-weight:900;font-size:1.4rem;border-radius:50%;width:36px;height:36px;border:3px solid white;box-shadow:0 2px 5px #0a662f50}.stage-arrow{color:#f49b00;font-size:2rem;font-weight:1000;position:absolute;top:56px;left:-12px}.stage.is-future .stage-arrow{color:#88939b}.note-info{display:flex;align-items:center;gap:12px;background:#d9eefb;color:#082f49;border-radius:90px;padding:12px 18px;font-weight:650;margin-top:20px;font-size:.94rem}.info-icon{border:3px solid #1686cb;color:#1686cb;border-radius:50%;min-width:30px;width:30px;height:30px;display:grid;place-items:center;font-weight:1000}.contact-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;align-items:center;background:white;border-radius:35px;padding:19px 34px;box-shadow:var(--shadow);margin-top:12px}.payments{display:flex;flex-direction:column;gap:6px;align-items:center;border-right:2px solid #bfa990;padding-right:18px}.payments-title,.contact-title{font-size:1.1rem;font-weight:950;letter-spacing:-.02em}.pay-logos{display:flex;justify-content:center;gap:11px;margin-top:4px}.paylogo{display:grid;place-items:center;min-width:93px;height:76px;padding:5px 13px;color:white;border-radius:17px;font-weight:1000;font-size:1.8rem;box-shadow:0 3px 6px #133a4730}.paylogo.yape{background:linear-gradient(140deg,#a719b8,#570176);font-style:italic;font-family:Georgia,serif}.paylogo.plin{background:linear-gradient(135deg,#03d7be,#069eac)}.payment-number{font-weight:1000;font-size:clamp(1.35rem,2.7vw,1.9rem);color:#004e4b;letter-spacing:-.04em}.contact-person{text-align:center}.rep-name{font-size:1.56rem;font-weight:1000;margin:4px auto 10px}.wa-btn{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;min-height:61px;width:100%;border-radius:99px;text-decoration:none;color:white;background:linear-gradient(#21d63f,#009121);border:3px solid white;box-shadow:0 0 0 2px #b8e6c4,0 4px 10px #0c76332b;font-weight:1000;font-size:clamp(1.05rem,2.3vw,1.55rem);transition:transform .15s,box-shadow .15s}.wa-btn:hover,.wa-btn:focus-visible{transform:translateY(-2px);box-shadow:0 0 0 3px #7beaa0,0 7px 18px #0c76334b}.wa-icon{width:29px;height:29px;fill:currentColor}.contact-small{font-size:.72rem;color:#5b6b72;margin:7px 0 0}.wave{height:32px;background:linear-gradient(175deg,transparent 0 36%,var(--yellow) 37% 60%,var(--navy) 61%);margin-top:4px}.footer{background:linear-gradient(130deg,#00617b,#00324b);color:white;padding:27px 0}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.footer-item{display:flex;gap:15px;align-items:center;border-right:1px solid #ffffff85;font-size:1.03rem;font-weight:900;line-height:1.32;padding:0 18px}.footer-item:last-child{border:0}.footer-item svg{width:48px;height:48px;flex:none;color:var(--yellow)}.below{background:#fffefa;padding:55px 0 65px}.section-kicker{font-size:.78rem;letter-spacing:.12em;font-weight:1000;color:#057a9c;text-transform:uppercase}.section-heading{font-size:clamp(1.7rem,3.4vw,2.5rem);margin:5px 0 14px;color:#073c54}.below-intro{max-width:700px;font-size:1.04rem;line-height:1.65}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.info-card,.updates-box,.media-box{background:white;border:1px solid #f1e6da;border-radius:25px;padding:25px;box-shadow:0 6px 20px #0330470b}.info-card p{line-height:1.65}.updates-box,.media-box{margin-top:22px}.update-list{display:grid;gap:15px}.update{border-left:5px solid var(--yellow);padding:8px 0 8px 17px;background:linear-gradient(90deg,#fff9e5,white);border-radius:0 14px 14px 0}.update time{font-size:.8rem;color:#426c7a}.update h3{font-size:1.09rem;margin:4px 0}.update p{margin:4px 0;line-height:1.5}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.gallery figure{margin:0}.gallery img,.gallery video{width:100%;height:215px;object-fit:cover;border-radius:15px}.gallery figcaption{font-size:.84rem;color:#516775;margin-top:5px}.doc-link{display:inline-flex;align-items:center;gap:8px;border:1px solid #a8cbd2;border-radius:12px;padding:12px;text-decoration:none;margin-right:10px}.doc-link:hover{background:#e5f5fa}.share-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.action{border:0;border-radius:999px;padding:13px 19px;background:var(--yellow);font-weight:900;text-decoration:none;cursor:pointer;color:var(--navy)}.action.secondary{background:var(--navy);color:white}.action:hover{filter:brightness(.97);transform:translateY(-1px)}.disclaimer{font-size:.81rem;color:#526775;line-height:1.55;margin-top:26px;border-top:1px solid #d6e1e3;padding-top:14px}.landing{min-height:70vh;padding:60px 0}.landing h1{max-width:720px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.07}.landing p{max-width:700px;line-height:1.7}.case-cards{margin-top:32px;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.case-card{background:white;text-decoration:none;border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.case-card img{width:100%;height:210px;object-fit:cover}.case-card-body{padding:20px}.case-card h2{margin:0}.case-card p{margin-bottom:0}.site-footnote{background:#002e43;color:#d6eef3;font-size:.78rem;text-align:center;padding:15px 20px}.no-photo{background:#d9f1f7;aspect-ratio:1;display:grid;place-items:center;font-size:5rem;color:var(--navy)}
@media(max-width:850px){.stages-grid{grid-template-columns:1fr 1fr 1fr}.stages-title{grid-column:1/-1;text-align:center}.stages-title:after{margin:8px auto}.stage-arrow{left:-16px;top:50px}.hero-copy{max-width:54%}.hero{min-height:430px}.hero .wrap{min-height:430px}.contact-panel{padding:18px}.brand{font-size:1.3rem}.nav a{padding:7px 8px;font-size:.79rem}}
@media(max-width:620px){.wrap{width:calc(100% - 24px)}.topbar .wrap{min-height:65px;flex-direction:column;padding:12px 0;gap:8px}.brand{font-size:1.4rem}.nav{gap:2px}.nav a{font-size:.78rem;padding:7px 9px}.hero{min-height:640px}.hero .wrap{min-height:640px}.hero-photo{inset:0 0 0 0;background-size:100% auto;background-repeat:no-repeat;background-position:right top;clip-path:none;border-radius:0;opacity:.96}.hero-photo-overlay{background:linear-gradient(180deg,rgba(255,248,236,.04) 0%,rgba(255,249,241,.0) 29%,rgba(255,249,241,.73) 52%,#fff9f1 77%)}.hero-copy{max-width:100%;padding:340px 8px 15px;position:relative}.hero-name{font-size:3.9rem}.hero-lastname{font-size:1.9rem}.hero-description{font-size:1.04rem;margin-top:10px}.heart-accent{font-size:2rem}.age{font-size:1.13rem}.banner{max-width:100%;font-size:1.15rem;line-height:1.08;margin-top:-10px;margin-left:auto;margin-right:auto;padding:13px 16px;gap:5px}.banner .hand{font-size:1.45rem}.stages{padding:19px 12px 18px;border-radius:24px;margin-top:23px}.stages-grid{gap:5px}.stages-title{font-size:1.5rem;margin-bottom:10px}.stage .medallion{width:100px}.stage-icon{width:66px;height:66px}.stage .tag{font-size:.83rem;padding:3px 11px}.stage .stage-caption{font-size:.75rem;min-height:67px;padding:10px 4px}.stage-arrow{font-size:1.15rem;left:-9px;top:39px}.stage.is-done:after{top:51px;left:calc(50% + 23px);width:26px;height:26px;font-size:1rem}.note-info{border-radius:18px;font-size:.83rem;padding:11px 13px}.contact-panel{grid-template-columns:1fr;gap:17px;border-radius:24px}.payments{border-right:0;border-bottom:1px solid #ddd1ba;padding:0 0 15px}.contact-title{font-size:1.06rem}.paylogo{min-width:84px;height:58px;font-size:1.45rem}.rep-name{font-size:1.3rem}.footer-grid{grid-template-columns:1fr;gap:16px}.footer-item{border-right:0;border-bottom:1px solid #ffffff3e;padding:0 4px 13px}.footer-item:last-child{padding-bottom:0}.footer-item svg{width:36px;height:36px}.info-grid{grid-template-columns:1fr}.below{padding:38px 0}.info-card,.updates-box,.media-box{padding:19px}.share-row{display:grid}.action{text-align:center}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img,.gallery video{height:160px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
