:root{--blue:#299ace;--pink:#ea2771;--yellow:#fac02b;--ink:#333;--cream:#fffaf0;--white:#fff;--sky:#e9f8ff;--shadow:0 18px 50px rgba(28,87,112,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Open Sans",sans-serif;line-height:1.7;background:#fff}h1,h2,h3,.button,nav{font-family:"Fredoka",sans-serif}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.05;margin-bottom:24px;color:var(--blue)}h3{font-size:1.5rem;line-height:1.2}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:106px;padding:8px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;z-index:10;box-shadow:0 5px 25px rgba(25,79,100,.12)}.brand{width:185px;height:88px;overflow:hidden;display:block}.brand img{width:100%;height:100%;object-fit:cover}.site-header nav{display:flex;gap:10px}.site-header nav a{text-decoration:none;text-transform:uppercase;padding:12px 15px;color:var(--blue);font-weight:600;border-radius:9px;transition:.2s}.site-header nav a:hover,.site-header nav a:focus{background:var(--pink);color:#fff}.menu-button{display:none;border:0;background:var(--pink);padding:10px;border-radius:8px}.menu-button span:not(.sr-only){display:block;width:25px;height:3px;background:#fff;margin:4px}.hero{min-height:670px;background:var(--blue);display:grid;grid-template-columns:.86fr 1.14fr;align-items:center;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:60px;background:#fff;clip-path:polygon(0 72%,12% 44%,25% 78%,41% 32%,58% 73%,73% 40%,87% 75%,100% 43%,100% 100%,0 100%)}.hero-copy{padding:60px 2vw 100px max(7vw,30px);color:#fff;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.92rem;margin-bottom:10px}.hero h1{font-size:clamp(4rem,7vw,7rem);line-height:.86;color:var(--yellow);text-shadow:3px 3px 0 rgba(43,75,90,.35);margin:10px 0 28px}.hero-copy>p:not(.eyebrow){font-size:1.16rem;max-width:470px}.hero-art{height:100%;position:relative}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:47% center}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--blue),transparent 35%)}.button{display:inline-block;padding:15px 24px;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.88rem;font-weight:700;border-radius:8px;box-shadow:0 10px 24px rgba(37,57,66,.18);transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 15px 28px rgba(37,57,66,.23)}.button-light{background:#fff;color:var(--pink)}.button-pink{background:var(--pink);color:#fff}.button-yellow{background:var(--yellow);color:#3b3b31}.section{padding:100px max(6vw,24px)}.intro{text-align:center;background:#fff}.intro-title{max-width:820px;margin:0 auto}.pink{color:var(--pink)}.yellow{color:var(--yellow)}.blue{color:var(--blue)}.intro-grid{max-width:1040px;margin:65px auto 45px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.bubble{position:relative;padding:0 30px}.round-image{width:285px;height:285px;border-radius:50%;overflow:hidden;margin:0 auto 30px;border:12px solid var(--sky);box-shadow:var(--shadow)}.round-image img{width:100%;height:100%;object-fit:cover}.bubble:first-child .round-image img{object-position:center 35%}.bubble h3{color:var(--pink);text-transform:uppercase}.bubble:before{content:"";position:absolute;width:70px;height:70px;border-radius:50%;top:25px;left:5%;background:var(--yellow);z-index:-1}.bubble-yellow:before{background:var(--pink);left:auto;right:6%;top:180px}.funding{background:var(--pink);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;gap:0;padding:0;align-items:stretch}.funding-image img{width:100%;height:100%;min-height:620px;object-fit:cover}.funding-copy{padding:90px max(6vw,45px)}.funding-copy h2{color:#fff}.funding-copy p{max-width:640px}.fees{background:var(--cream)}.fees-heading{text-align:center;max-width:860px;margin:0 auto 50px}.calculator{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.5fr .7fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}#fee-form{padding:42px}fieldset{border:0;padding:0;margin:0 0 26px}legend{font-family:"Fredoka";font-size:1.5rem;font-weight:600;margin-bottom:18px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{cursor:pointer}.choice input{position:absolute;opacity:0}.choice span{height:100%;display:flex;flex-direction:column;border:2px solid #dcecf2;border-radius:12px;padding:16px;transition:.2s}.choice small,.quantity-row small{display:block;color:#6a767b;line-height:1.4;margin-top:4px}.choice input:checked+span{border-color:var(--pink);background:#fff3f7;box-shadow:0 5px 15px rgba(234,39,113,.1)}.quantity-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e8edef;padding:18px 0}.stepper{display:flex;border:2px solid #dce6e9;border-radius:10px;overflow:hidden}.stepper button,.stepper input{width:42px;height:40px;border:0;background:#fff;text-align:center;font:600 1rem "Open Sans"}.stepper button{font-size:1.4rem;color:var(--blue);cursor:pointer}.stepper input{-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button{display:none}.estimate{background:var(--blue);color:#fff;padding:50px 38px;display:flex;flex-direction:column}.estimate>p:first-child{font-family:"Fredoka";font-size:1.3rem}.total{display:flex;align-items:flex-start;color:var(--yellow);margin:10px 0 25px}.total span{font-family:"Fredoka";font-size:2rem;margin-top:13px}.total strong{font:700 5.5rem/1 "Fredoka"}.breakdown{border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3);padding:18px 0;margin-bottom:20px}.breakdown div{display:flex;justify-content:space-between;font-size:.92rem}.estimate-note{font-size:.78rem;opacity:.8}.estimate .button{margin-top:auto;text-align:center}.payment-note{max-width:1000px;margin:35px auto 0;padding:26px 30px;border-left:5px solid var(--yellow);background:#fff}.payment-note p{margin:6px 0 0}.gallery{text-align:center}.gallery-grid{max-width:1180px;margin:45px auto 0;display:grid;grid-template-columns:.8fr 1.2fr .8fr;gap:18px;height:510px}.gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:90px 16px 90px 16px}.gallery-grid img:nth-child(2){object-position:center}.reviews{background:var(--blue);color:#fff;text-align:center}.reviews h2{color:#fff}.review-grid{max-width:1050px;margin:45px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:25px}.review-grid blockquote{margin:0;background:#fff;color:var(--ink);padding:40px;text-align:left;border-radius:15px;box-shadow:var(--shadow)}.stars{color:var(--yellow);letter-spacing:.2em}.review-grid cite{font:600 1.15rem "Fredoka";color:var(--pink)}footer{background:#28799f;color:#fff;position:relative;padding-top:80px;overflow:hidden}.footer-art{height:130px;position:absolute;top:0;left:0;width:100%;opacity:.32}.footer-art img{width:100%;height:100%;object-fit:cover}.footer-grid{position:relative;max-width:1180px;margin:auto;padding:70px 30px 55px;display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:60px}.footer-grid h2{color:var(--yellow);font-size:3rem}.footer-grid h3{color:var(--yellow)}.footer-grid a:not(.button){display:block;color:#fff;margin-bottom:8px}.copyright{text-align:center;margin:0;padding:18px;border-top:1px solid rgba(255,255,255,.2);font-size:.8rem}.reveal{animation:rise .7s ease both}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media(max-width:800px){.site-header{height:86px}.brand{width:145px;height:70px}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:86px;left:0;width:100%;background:var(--pink);padding:18px;flex-direction:column}.site-header nav.open{display:flex}.site-header nav a{color:#fff}.hero{grid-template-columns:1fr;min-height:700px}.hero-copy{position:absolute;padding:50px 28px 100px}.hero-art{height:700px;opacity:.35}.hero-art:after{background:linear-gradient(90deg,var(--blue),transparent)}.intro-grid,.funding,.calculator,.review-grid,.footer-grid{grid-template-columns:1fr}.intro-grid{gap:50px}.funding-image img{min-height:380px}.choice-grid{grid-template-columns:1fr}.estimate{min-height:470px}.gallery-grid{height:auto;grid-template-columns:1fr 1fr}.gallery-grid img{height:350px}.gallery-grid img:nth-child(3){grid-column:1/-1}.footer-grid{gap:25px}.section{padding:75px 22px}}@media(max-width:480px){h2{font-size:2.65rem}.hero h1{font-size:3.8rem}.round-image{width:240px;height:240px}#fee-form{padding:25px 20px}.quantity-row{gap:10px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img,.gallery-grid img:nth-child(3){grid-column:auto;height:360px}.funding-copy{padding:65px 24px}.estimate{padding:40px 25px}.footer-grid{padding-left:24px;padding-right:24px}}
