:root{--ink:#182446;--indigo:#3e4591;--blue:#7189d8;--sky:#dce9ff;--coral:#f48f7b;--yellow:#f6d778;--mint:#b9dfce;--cream:#fbf8f1;--white:#fff;--muted:#646b7d;--radius:28px;--shadow:0 20px 60px rgba(33,42,85,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand strong{font-family:"Manrope",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.section-pad{padding:110px max(6vw,24px)}.eyebrow{color:var(--indigo);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(6vw,24px);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;letter-spacing:.12em;font-size:1.25rem}.brand small{display:block;color:var(--muted);font-size:.68rem}.brand-mark{width:42px;height:42px;display:grid;place-items:center;position:relative}.brand-mark i{position:absolute;border:2px solid var(--indigo);border-radius:50%}.brand-mark i:nth-child(1){width:40px;height:40px}.brand-mark i:nth-child(2){width:27px;height:27px}.brand-mark i:nth-child(3){width:12px;height:12px;background:var(--coral);border:0}.site-header nav{display:flex;align-items:center;gap:30px;font-size:.9rem;font-weight:600}.site-header nav a{transition:.25s}.site-header nav a:hover{color:var(--indigo)}.nav-cta{border:1px solid var(--ink);padding:12px 20px;border-radius:100px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:calc(100vh - 92px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw;position:relative;padding-top:60px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(3rem,6vw,6.6rem);line-height:.95;letter-spacing:-.065em;max-width:780px;margin-bottom:30px}.hero h1 em{font-style:normal;color:var(--indigo);position:relative}.hero h1 em:after{content:"";height:8px;background:var(--coral);border-radius:50%;position:absolute;left:4px;right:0;bottom:-3px;transform:rotate(-2deg)}.hero-lead{font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.7;color:var(--muted);max-width:620px}.hero-actions{display:flex;align-items:center;gap:30px;margin:38px 0 50px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 24px;border-radius:100px;font-weight:700;transition:.25s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--ink);color:white;box-shadow:0 12px 30px rgba(24,36,70,.22)}.button span,.text-link span{font-size:1.2rem}.text-link{font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.trust-row{display:flex;gap:40px}.trust-row div{display:grid}.trust-row strong{font:800 1.5rem Manrope;color:var(--indigo)}.trust-row span{font-size:.78rem;color:var(--muted)}.hero-visual{position:relative;min-height:640px;display:grid;place-items:center}.image-frame{width:min(430px,80%);height:570px;border-radius:48% 48% 40px 40px;overflow:hidden;box-shadow:var(--shadow);position:relative;z-index:2}.image-frame:after{content:"";position:absolute;inset:0;border:12px solid rgba(255,255,255,.65);border-radius:inherit}.image-frame img{width:100%;height:100%;object-fit:cover}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:500px;height:500px;background:var(--sky);right:-170px;top:0}.orb-two{width:160px;height:160px;background:var(--yellow);right:34%;bottom:6%;animation:drift 7s ease-in-out infinite}.floating-note{position:absolute;z-index:4;background:white;border-radius:100px;padding:15px 20px;box-shadow:var(--shadow);font-weight:700;font-size:.9rem;animation:float 4s ease-in-out infinite}.floating-note span{color:var(--coral)}.note-one{left:2%;top:26%}.note-two{right:0;bottom:20%;animation-delay:-2s}.scribble{position:absolute;width:180px;right:0;top:12%;z-index:3}.scribble path{fill:none;stroke:var(--coral);stroke-width:4;stroke-linecap:round;stroke-dasharray:8 10}.intro-strip{background:var(--indigo);color:white;overflow:hidden;padding:17px 0;transform:rotate(-1deg);width:102%;margin-left:-1%}.marquee{display:flex;width:max-content;animation:marquee 25s linear infinite}.marquee span{font:600 1rem Manrope;letter-spacing:.08em;white-space:nowrap}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end;margin-bottom:55px}.section-heading h2,.approach h2,.about h2,.contact h2{font-size:clamp(2.3rem,4vw,4.4rem);line-height:1.05;letter-spacing:-.05em;margin-bottom:0}.section-heading>p{color:var(--muted);line-height:1.7;max-width:520px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{border-radius:var(--radius);padding:40px;min-height:390px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:.35s}.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.service-card.coral{background:#f9c6bb}.service-card.blue{background:#cbd7fb}.service-card.yellow{background:#f7e5a9}.service-card.mint{background:#cce7dc}.card-no{position:absolute;right:28px;top:26px;font-weight:800;opacity:.45}.icon{width:64px;height:64px;background:rgba(255,255,255,.6);display:grid;place-items:center;border-radius:50%;font-size:2rem;margin-bottom:auto}.service-card h3{font-size:1.65rem;margin:30px 0 12px}.service-card p{color:#424a62;line-height:1.65;max-width:520px}.card-link{border:0;background:none;padding:0;text-align:left;font-weight:800;cursor:pointer;margin-top:10px}.approach{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;overflow:hidden}.approach .eyebrow{color:var(--yellow)}.approach-copy>p:not(.eyebrow){color:#c7ccda;line-height:1.75;font-size:1.05rem}.approach ul{padding:0;margin:40px 0 0;list-style:none}.approach li{padding:20px 0;border-top:1px solid rgba(255,255,255,.15);display:flex;gap:22px}.approach li span{color:var(--coral);font-weight:800}.approach-art{height:520px;position:relative;display:grid;place-items:center}.big-ring{width:340px;height:340px;border:2px solid var(--blue);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 60px rgba(113,137,216,.08),0 0 0 120px rgba(113,137,216,.04);animation:pulse 5s ease-in-out infinite}.big-ring span{font:800 4rem Manrope;color:var(--yellow)}.satellite{position:absolute;border-radius:50%;display:grid;place-items:center;font-weight:700}.s1{width:105px;height:105px;background:var(--coral);left:8%;top:10%;animation:float 4s ease-in-out infinite}.s2{width:130px;height:130px;background:var(--blue);right:3%;top:26%;animation:float 5s ease-in-out infinite -1s}.s3{width:115px;height:115px;background:var(--mint);color:var(--ink);left:18%;bottom:4%;animation:float 6s ease-in-out infinite -3s}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about-image{height:600px;border-radius:var(--radius);overflow:hidden;position:relative;background:var(--sky)}.about-image img{width:100%;height:100%;object-fit:cover}.media-badge{position:absolute;bottom:24px;left:24px;right:24px;background:rgba(255,255,255,.94);padding:18px;border-radius:18px;display:flex;align-items:center;gap:15px;box-shadow:var(--shadow)}.media-badge>span{width:46px;height:46px;border-radius:50%;background:var(--coral);display:grid;place-items:center}.media-badge small,.media-badge strong{display:block}.media-badge small{color:var(--muted);margin-bottom:3px}.about-lead{font:600 1.25rem Manrope;color:var(--indigo);line-height:1.5;margin-top:28px}.about-copy>p:not(.eyebrow):not(.about-lead){color:var(--muted);line-height:1.75}.about blockquote{font:700 1.5rem Manrope;margin:35px 0;padding-left:22px;border-left:4px solid var(--coral)}.testimonials{background:#eef1fb}.bubble-field{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.bubble{border:0;border-radius:40px;background:white;box-shadow:0 10px 35px rgba(44,56,101,.08);overflow:hidden}.bubble:nth-child(3){grid-column:1/-1;width:65%;justify-self:center}.bubble summary{list-style:none;cursor:pointer;padding:30px 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;font:700 1.15rem Manrope}.bubble summary::-webkit-details-marker{display:none}.bubble summary i{font-style:normal;width:34px;height:34px;border-radius:50%;background:var(--sky);display:grid;place-items:center;transition:.3s}.bubble[open] summary i{transform:rotate(45deg);background:var(--coral)}.bubble div{padding:0 34px 32px;color:var(--muted);line-height:1.7;animation:drop .3s ease}.bubble strong{color:var(--ink)}.pricing{background:var(--cream)}.price-list{background:white;border-radius:var(--radius);padding:12px 34px;box-shadow:0 15px 50px rgba(33,42,85,.07)}.price-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 10px;border-bottom:1px solid #e5e5e9}.price-row>div{position:relative;padding-left:28px}.price-dot{position:absolute;left:0;top:8px;width:10px;height:10px;border-radius:50%;background:var(--blue)}.price-row h3{margin:0 0 5px;font-size:1.1rem}.price-row p{margin:0;color:var(--muted);font-size:.9rem}.price-row>strong{font:800 1.35rem Manrope;white-space:nowrap}.price-row.featured{background:var(--sky);border-radius:18px;margin:0 -10px;padding-left:20px;padding-right:20px;border:0}.more-prices summary{list-style:none;cursor:pointer;text-align:center;padding:25px;font-weight:800}.more-prices summary::-webkit-details-marker{display:none}.more-prices summary span{margin-left:8px}.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;padding:0 10px 20px}.more-grid p{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #eee;color:var(--muted)}.more-grid b{color:var(--ink);white-space:nowrap}.contact{padding-top:70px}.contact-card{background:var(--indigo);color:white;border-radius:40px;padding:80px;position:relative;overflow:hidden}.contact-card>*{position:relative;z-index:2}.contact-card .eyebrow{color:var(--yellow)}.contact-card h2{max-width:780px}.contact-card>p:not(.eyebrow){max-width:600px;color:#dde0ef;line-height:1.7;margin:25px 0 35px}.button.light{background:white;color:var(--ink)}.contact-details{display:flex;gap:30px;flex-wrap:wrap;margin-top:60px;padding-top:25px;border-top:1px solid rgba(255,255,255,.2);font-weight:600}.contact-orb{position:absolute;width:450px;height:450px;border:80px solid rgba(255,255,255,.08);border-radius:50%;right:-80px;top:-90px;z-index:1}footer{padding:45px max(6vw,24px);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:.85rem;color:var(--muted)}.footer-brand{color:var(--ink)}dialog{border:0;border-radius:28px;padding:45px;max-width:620px;width:calc(100% - 40px);box-shadow:0 30px 100px rgba(10,16,40,.35);color:var(--ink)}dialog::backdrop{background:rgba(24,36,70,.65);backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:2rem;cursor:pointer}.dialog-body h2{font-size:2rem}.dialog-body p,.dialog-body li{color:var(--muted);line-height:1.7}.cursor-glow{width:320px;height:320px;border-radius:50%;background:rgba(113,137,216,.1);position:fixed;z-index:-1;pointer-events:none;transform:translate(-50%,-50%);filter:blur(30px)}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.12s}
@keyframes float{50%{transform:translateY(-14px) rotate(2deg)}}@keyframes drift{50%{transform:translate(-20px,-20px)}}@keyframes pulse{50%{transform:scale(1.04)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes drop{from{opacity:0;transform:translateY(-8px)}}
@media(max-width:900px){.site-header{height:76px}.menu-toggle{display:grid;gap:6px;padding:10px;z-index:3}.menu-toggle span{width:25px;height:2px;background:var(--ink)}.site-header nav{position:fixed;inset:0;background:var(--cream);flex-direction:column;justify-content:center;font-size:1.35rem;transform:translateY(-110%);transition:.4s}.site-header nav.open{transform:none}.hero{grid-template-columns:1fr;padding-top:60px}.hero-visual{min-height:560px}.section-heading,.approach,.about{grid-template-columns:1fr}.approach-art{order:2}.about-image{height:480px}.bubble:nth-child(3){width:100%}.contact-card{padding:55px 35px}footer{flex-direction:column;text-align:center}}
@media(max-width:620px){.section-pad{padding:78px 20px}.hero{padding-top:30px}.hero h1{font-size:3.25rem}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{gap:20px}.trust-row span{max-width:80px}.hero-visual{min-height:480px}.image-frame{height:450px;width:86%}.note-one{left:0}.note-two{right:-8px}.service-grid,.bubble-field,.more-grid{grid-template-columns:1fr}.bubble:nth-child(3){grid-column:auto}.service-card{min-height:350px;padding:30px}.section-heading{gap:20px}.approach-art{height:420px;transform:scale(.8)}.about-image{height:360px}.media-badge{left:12px;right:12px;bottom:12px;padding:12px}.media-badge strong{font-size:.8rem}.price-list{padding:8px 15px}.price-row{align-items:flex-start}.price-row p{font-size:.8rem}.contact-card{padding:45px 25px}.contact-details{flex-direction:column;gap:12px}.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.brand{gap:0}.brand img{display:block;width:156px;height:58px;object-fit:contain;mix-blend-mode:multiply}.footer-brand img{width:140px;height:52px}.site-header nav{gap:24px;font-size:.86rem}.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:.8fr 1.2fr;grid-template-rows:290px 250px;gap:24px}.gallery-item{border:0;padding:0;border-radius:var(--radius);overflow:hidden;position:relative;cursor:pointer;background:var(--ink);text-align:left}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,opacity .4s ease}.gallery-item:hover img{transform:scale(1.045);opacity:.85}.gallery-tall{grid-row:1/3}.gallery-wide{grid-column:2}.gallery-item>span{position:absolute;left:18px;right:18px;bottom:18px;padding:18px 20px;background:rgba(255,255,255,.94);border-radius:17px;display:grid;grid-template-columns:1fr auto;box-shadow:var(--shadow)}.gallery-item small{grid-column:1;color:var(--indigo);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;margin-bottom:4px}.gallery-item strong{grid-column:1;font:700 1rem Manrope}.gallery-item i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:1.35rem}.gallery-quote{grid-column:2;background:var(--yellow);border-radius:var(--radius);padding:36px 42px;position:relative;display:flex;align-items:center;overflow:hidden}.gallery-quote span{font:800 6rem Manrope;color:rgba(62,69,145,.25);align-self:flex-start;line-height:.8}.gallery-quote p{font:700 clamp(1.25rem,2.2vw,2rem) Manrope;line-height:1.35;margin:0;max-width:580px}.gallery-quote i{position:absolute;right:28px;bottom:22px;color:var(--coral);font-size:2rem}.gallery-dialog{padding:0;background:transparent;max-width:min(1100px,calc(100vw - 40px));overflow:visible}.gallery-dialog img{display:block;max-width:100%;max-height:88vh;border-radius:20px;margin:auto}.gallery-dialog .gallery-close{color:white;background:var(--ink);width:42px;height:42px;border-radius:50%;right:-12px;top:-12px;z-index:2}.contact-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.facebook-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.45)}.facebook-link b{font:800 1.25rem Arial;background:white;color:#1877f2;width:31px;height:31px;border-radius:50%;display:grid;place-items:end center;overflow:hidden}
@media(max-width:900px){.brand img{width:135px;height:50px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:480px 300px auto}.gallery-tall,.gallery-wide,.gallery-quote{grid-column:auto;grid-row:auto}}
@media(max-width:620px){.gallery-grid{grid-template-rows:430px 230px auto}.gallery-quote{padding:30px}.gallery-item>span{left:10px;right:10px;bottom:10px}.contact-actions{align-items:flex-start;flex-direction:column}}
.map-card{margin-top:24px;border-radius:32px;overflow:hidden;background:white;box-shadow:var(--shadow);position:relative}.map-card iframe{display:block;filter:saturate(.75) contrast(.95)}.map-caption{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 28px}.map-caption small,.map-caption strong{display:block}.map-caption small{color:var(--indigo);font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px}.map-caption a{font-weight:800;color:var(--indigo);white-space:nowrap}.map-caption a span{margin-left:8px}@media(max-width:620px){.map-card iframe{height:350px}.map-caption{align-items:flex-start;flex-direction:column;gap:16px}.map-caption a{white-space:normal}}
.gallery-grid{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,250px);grid-auto-rows:250px}.gallery-item{display:block}.gallery-tall{grid-row:span 2}.gallery-wide{grid-column:span 2}.gallery-item>span{display:flex;align-items:center;justify-content:space-between;gap:15px;left:14px;right:14px;bottom:14px;padding:14px 16px;font:700 .9rem Manrope;transform:translateY(8px);opacity:0;transition:opacity .35s ease,transform .35s ease}.gallery-item:hover>span,.gallery-item:focus-visible>span{opacity:1;transform:none}.gallery-item>span i{font-style:normal;font-size:1.15rem}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.09);opacity:.88}
@media(max-width:1000px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,260px);grid-auto-rows:260px}}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:330px}.gallery-tall{grid-row:span 1}.gallery-wide{grid-column:span 1}.gallery-item>span{opacity:1;transform:none}}
