@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');:root{--ink:#263945;--blue:#6799b5;--ice:#eaf5fa;--line:#d7e5ec}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.preloader{position:fixed;inset:0;z-index:999;background:#eef7fb;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;transition:.5s}.preloader img{width:110px;mix-blend-mode:multiply;animation:pulse 1s infinite}.preloader span{font-size:11px;letter-spacing:.15em}.preloader.hide{opacity:0;visibility:hidden}header{height:82px;position:fixed;inset:0 0 auto;z-index:50;display:grid;grid-template-columns:170px 1fr 170px;align-items:center;padding:0 5vw;background:#ffffffe8;backdrop-filter:blur(18px);border-bottom:1px solid #fff;box-shadow:0 8px 30px #34536712}.brand img{width:105px;height:70px;object-fit:cover;mix-blend-mode:multiply}nav{display:flex;justify-content:center;gap:28px}nav a{font-size:13px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 24px;border:0;border-radius:99px;background:linear-gradient(120deg,#477f9e,#7db1c9);color:#fff;text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.05em;box-shadow:0 10px 25px #4f829b35;transition:.3s}.btn:hover{transform:translateY(-3px);box-shadow:0 15px 30px #4f829b45}.desktop-cta{justify-self:end}.hamb{display:none;border:0;background:none;font-size:25px}.hero{min-height:760px;padding:125px 5vw 45px;display:grid;grid-template-columns:48% 52%;align-items:center;background:radial-gradient(circle at 75% 40%,#fff 0 23%,transparent 48%),linear-gradient(120deg,#f8fcfe,#e3f1f7);overflow:hidden}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;color:#5a8da8}.hero h1,.section h2{font:500 clamp(52px,6.3vw,96px)/.96 'Playfair Display',serif;letter-spacing:-.045em;margin:22px 0}.hero h1 em,.section h2 em{color:#5f91ad;font-weight:500}.hero-copy{position:relative;z-index:2;animation:rise .9s .3s both}.hero-copy>p{font-size:17px;line-height:1.75;max-width:540px;color:#536774}.actions{display:flex;gap:12px;margin:30px 0}.ghost{color:#477b96;background:#fff9;border:1px solid #8db4c7;box-shadow:none}.trust{display:flex;gap:20px;font-size:12px;color:#667d88}.hero-art{height:630px;position:relative;animation:artIn 1s .4s both}.hero-art>img{width:100%;height:100%;object-fit:cover;border-radius:50% 50% 30px 30px}.rating{position:absolute;left:-25px;bottom:50px;background:#ffffffdf;padding:14px 18px;border-radius:16px;display:flex;gap:12px;align-items:center;box-shadow:0 15px 35px #385f7026}.rating b{font:500 28px 'Playfair Display'}.rating span{font-size:10px;color:#94773d}.section{padding:110px 5vw}.section-head{text-align:center;max-width:760px;margin:0 auto 55px}.section h2{font-size:clamp(42px,5vw,68px)}.section-head p{color:#75858e}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:335px;position:relative;padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fff,#f8fbfc);transition:.45s}.card:hover{transform:translateY(-9px);box-shadow:0 22px 45px #486f8118}.card i{font-style:normal;font-size:38px;color:#6395af}.card small{position:absolute;right:24px;top:24px;color:#aec3ce;font:italic 19px 'Playfair Display'}.card h3{font:500 27px 'Playfair Display';margin:28px 0 6px}.card>b{font-size:12px;color:#5e91aa}.card p{font-size:14px;line-height:1.7;color:#71808a}.card a{position:absolute;bottom:28px;color:#477c98;font-size:11px;text-transform:uppercase;font-weight:600;letter-spacing:.1em}.about{display:grid;grid-template-columns:1.08fr .92fr;gap:8vw;align-items:center;background:#fbfaf7}.about-photo{height:590px;position:relative}.about-photo img{width:100%;height:100%;object-fit:cover;border-radius:15px 90px 15px 15px}.about-photo span{position:absolute;right:-30px;bottom:35px;background:#fff;padding:18px 25px;border-radius:20px;box-shadow:0 18px 40px #223d4a22}.about-photo span b{display:block;font:500 34px 'Playfair Display';color:#5f91ac}.about-copy>p{color:#6b7c85;line-height:1.8}.qualities{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.qualities div{border-bottom:1px solid var(--line);padding:16px 0;color:#5c92ae}.qualities b{color:var(--ink);margin-left:8px}.stats{padding:42px 6vw;display:grid;grid-template-columns:repeat(4,1fr);background:#e4f2f8}.stats div{text-align:center;border-right:1px solid #bfd5e0}.stats div:last-child{border:0}.stats b{display:block;font:500 40px 'Playfair Display';color:#4f84a0}.stats span{font-size:12px;color:#697c86}.soft{background:#f7fbfd}.why{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:auto}.why div{padding:28px;border-bottom:1px solid var(--line);color:#80a5b8}.why b{margin-left:20px;color:var(--ink);font:500 17px 'Playfair Display'}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px;gap:12px}.gallery button{border:0;padding:0;border-radius:18px;overflow:hidden;cursor:pointer}.gallery button:first-child{grid-row:span 2}.gallery button:nth-child(2){grid-column:span 2}.gallery img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery button:hover img{transform:scale(1.06)}.reviews{background:var(--ice)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-grid blockquote{margin:0;background:#fff;padding:32px;border:1px solid var(--line);border-radius:22px;color:#bf9a55}.review-grid p{font:500 20px/1.55 'Playfair Display';color:var(--ink)}.review-grid b{font-size:13px;color:var(--ink)}.appointment{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;background:#2a4556;color:#fff}.appointment .eyebrow{color:#acd3e5}.appointment h2 em{color:#b6d8e8}.appointment p{color:#c5d2d8;line-height:1.7}.phone{font:500 24px 'Playfair Display';border-bottom:1px solid #7d9eae}form{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{font-size:10px;letter-spacing:.1em;color:#c0d2db;text-transform:uppercase}input,select,textarea{width:100%;margin-top:7px;padding:14px;border:1px solid #ffffff28;border-radius:10px;background:#ffffff0d;color:#fff;outline:none}select option{color:#222}textarea{height:75px;resize:none}.wide{grid-column:1/-1}form button{width:100%}.contact{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contact-grid>*{min-height:170px;padding:23px;border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;justify-content:space-between}.contact-grid small{font-size:9px;letter-spacing:.14em;color:#5f90aa}.contact-grid b{font:500 17px/1.4 'Playfair Display'}.contact-grid span{font-size:11px;color:#6c8d9d}footer{position:relative;padding:65px 6vw 50px;background:#edf6fa;display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:45px}footer>div{display:flex;flex-direction:column;gap:10px;font-size:12px}footer img{width:145px;height:90px;object-fit:cover;mix-blend-mode:multiply}footer>small{position:absolute;left:6vw;right:6vw;bottom:15px;border-top:1px solid #c9dce5;padding-top:10px;color:#81929b}.whatsapp{position:fixed;right:22px;bottom:24px;z-index:40;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#2bad65;color:#fff;font-size:25px}.whatsapp span{position:absolute;right:62px;white-space:nowrap;background:#243e4c;padding:10px;border-radius:8px;font-size:11px;opacity:0;transition:.3s}.whatsapp:hover span{opacity:1}.mobile-bar{display:none}.lightbox{position:fixed;inset:0;z-index:200;background:#14252ceb;display:none;align-items:center;justify-content:center;padding:5vw}.lightbox.open{display:flex}.lightbox img{max-height:88vh;border-radius:16px}.lightbox button{position:absolute;top:25px;right:30px;background:none;border:0;color:#fff;font-size:40px}.reveal{opacity:0;transform:translateY(35px);transition:.8s}.reveal.shown{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(35px)}}@keyframes artIn{from{opacity:0;transform:translateX(60px) scale(.96)}}@keyframes pulse{50%{transform:scale(.94);opacity:.7}}
@media(max-width:900px){header{height:72px;grid-template-columns:1fr auto;padding:0 20px}.brand img{height:60px;width:90px}.desktop-cta{display:none}.hamb{display:block}nav{position:fixed;top:72px;right:0;width:min(80vw,360px);height:calc(100vh - 72px);background:#f5fbfd;flex-direction:column;justify-content:flex-start;padding:45px 35px;transform:translateX(100%);transition:.4s;box-shadow:-15px 30px 40px #263d4a22}nav.open{transform:none}nav a{font:500 24px 'Playfair Display'}.hero{grid-template-columns:1fr;padding:115px 20px 35px}.hero h1{font-size:58px}.hero-art{height:440px;margin-top:35px}.section{padding:80px 20px}.services{grid-template-columns:1fr 1fr}.about,.appointment,.contact{grid-template-columns:1fr}.about-photo{height:450px}.about-photo span{right:15px}.stats{grid-template-columns:1fr 1fr;gap:22px}.stats div:nth-child(2){border:0}.why{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:250px 180px 180px}.gallery button:first-child{grid-column:span 2;grid-row:auto}.gallery button:nth-child(2){grid-column:auto}.review-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr 1fr}.contact-grid>*:last-child{grid-column:span 2}footer{grid-template-columns:1fr 1fr;padding-bottom:100px}footer>div:first-child{grid-column:span 2}.whatsapp{display:none}.mobile-bar{position:fixed;z-index:60;bottom:0;left:0;right:0;height:60px;background:#fff;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.mobile-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#4c809c}.mobile-bar span{font-size:9px}}
@media(max-width:560px){.actions .btn{padding:13px 15px}.trust{flex-wrap:wrap}.hero-art{height:390px}.services,.qualities,.why{grid-template-columns:1fr}.card{min-height:305px}.stats b{font-size:31px}.gallery{grid-template-columns:1fr;grid-template-rows:repeat(4,230px)}.gallery button:first-child{grid-column:auto}form{grid-template-columns:1fr}form>*{grid-column:1}.contact-grid{grid-template-columns:1fr}.contact-grid>*:last-child{grid-column:auto}footer{grid-template-columns:1fr}footer>div:first-child{grid-column:auto}.section h2{font-size:44px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
