:root{--canvas: #fffaf6;--surface: #ffffff;--soft: #f8e5ec;--soft-2: #f3d6e1;--rose: #dda1bc;--rose-deep: #c96d93;--wine: #a5004f;--wine-dark: #5a0025;--ink: #191315;--muted: #63565d;--line: rgba(90, 0, 37, .14);--line-strong: rgba(90, 0, 37, .24);--shadow: 0 24px 70px rgba(90, 0, 37, .12);--soft-shadow: 0 12px 34px rgba(90, 0, 37, .08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink);scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(221,161,188,.22),transparent 26%),linear-gradient(180deg,#fffdfb,#fff8fb 42%,#fdf0f5);color:var(--ink);font-size:16px;line-height:1.65}a{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.04;letter-spacing:-.01em}h1,h2,h3,.brand-copy strong,.site-footer strong{font-family:Georgia,Times New Roman,serif;font-weight:500}h1{max-width:820px;margin-bottom:18px;color:var(--wine-dark);font-size:clamp(2.45rem,5vw,4.9rem)}h2{margin-bottom:14px;color:var(--wine-dark);font-size:clamp(1.65rem,3.25vw,3rem)}h3{margin-bottom:10px;color:var(--wine-dark);font-size:1.08rem}p{color:var(--muted)}main{view-transition-name:page-content}.site-header,.site-footer,.hero,.section,.page-hero,.cta-band{width:min(1160px,calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:30;min-height:72px;border-bottom:1px solid var(--line);background:#fffaf6e0;backdrop-filter:blur(14px)}.header-inner{display:grid;grid-template-columns:minmax(230px,auto) 1fr auto;gap:clamp(20px,4vw,50px);align-items:center;min-height:72px}.brand{display:inline-flex;align-items:center;gap:14px;min-width:0;text-decoration:none}.brand img{width:auto;height:50px;border:1px solid var(--line);border-radius:12px;background:var(--rose)}.brand-copy{display:grid;gap:4px;min-width:0}.brand-copy strong{color:var(--wine-dark);font-size:1.2rem;line-height:1}.brand-copy small{color:var(--muted);font-size:.7rem;font-weight:700;line-height:1.2;white-space:nowrap}.main-nav{display:flex;flex-wrap:wrap;gap:clamp(10px,1.7vw,22px);justify-content:center}.main-nav a,.language-switch,.header-cta{min-height:38px;padding:8px 0;border-radius:999px;color:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none}.main-nav a{border:1px solid transparent}.main-nav a.active,.main-nav a:hover{color:var(--wine)}.header-actions{display:flex;gap:16px;align-items:center;justify-content:flex-end}.language-switch{display:inline-flex;align-items:center;color:var(--muted);font-weight:750}.header-cta{min-height:40px;padding:9px 15px;border:1px solid var(--wine);background:var(--wine);color:var(--canvas)}.menu-toggle{display:none;width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--wine-dark)}.menu-toggle span{display:block;width:18px;height:1.5px;margin:4px auto;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.82fr);gap:clamp(32px,6vw,72px);align-items:center;min-height:min(760px,calc(100vh - 72px));padding:clamp(48px,8vw,96px) 0 clamp(54px,7vw,84px)}.hero-copy{min-width:0}.hero-home .lead{max-width:710px}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--wine);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.lead{max-width:670px;color:#3d3138;font-size:clamp(1.04rem,1.5vw,1.22rem)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:1px solid var(--wine);border-radius:999px;font-weight:900;text-align:center;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.button:hover{transform:translateY(-2px)}.button:focus-visible,.main-nav a:focus-visible,.language-switch:focus-visible,.header-cta:focus-visible,.site-footer a:focus-visible,.contact-list a:focus-visible{outline:3px solid rgba(165,0,79,.18);outline-offset:3px}.button.primary{background:var(--wine);color:var(--canvas);box-shadow:0 14px 30px #a5004f2e}.button.secondary{background:transparent;color:var(--wine-dark)}.hero-card,.hero-media{position:relative;margin:0;border-radius:28px}.hero-card:before,.hero-media:before{content:"";position:absolute;inset:-16px 24px 30px -18px;z-index:-1;border-radius:40px;background:var(--soft)}.hero-media img{width:100%;aspect-ratio:4 / 4.6;border:1px solid rgba(255,255,255,.76);border-radius:26px;box-shadow:var(--shadow);object-fit:cover}.hero-media figcaption{position:absolute;right:18px;bottom:18px;width:min(250px,calc(100% - 36px));padding:14px 16px;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:#fffaf6e6;box-shadow:var(--soft-shadow);color:var(--wine-dark);font-size:.82rem;font-weight:800}.hero-media figcaption span{display:block;margin-bottom:4px;font-size:1.18rem}.hero-pills,.contact-list{display:flex;flex-wrap:wrap;gap:10px}.hero-pills{margin-top:28px}.hero-pills span,.location-pill,.section-tag{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#ffffffbd;color:var(--wine-dark);font-size:.92rem;font-weight:800}.section{padding:clamp(54px,8vw,92px) 0}.section-heading{max-width:780px;margin-bottom:28px}.section-heading p:last-child{max-width:760px}.intro-band,.soft-panel,.portfolio-band,.impact-panel{padding:clamp(30px,5vw,58px);border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:var(--soft-shadow)}.intro-band{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);gap:34px;align-items:start}.stack-copy{display:grid;gap:14px}.stack-copy p{margin-bottom:0;padding-bottom:18px;border-bottom:1px solid var(--line)}.feature-grid{grid-column:1 / -1;margin-top:4px}.feature-grid .card{box-shadow:none}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{position:relative;min-height:100%;padding:24px;border:1px solid var(--line);border-radius:22px;background:#ffffffd6;box-shadow:0 14px 34px #5a00250e;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:var(--soft-shadow)}.compact-card{min-height:100%}.card-number{display:inline-flex;margin-bottom:20px;color:var(--wine);font-size:1rem;font-weight:850;letter-spacing:.03em}.service-card h3{min-height:2.6em}.section-note{margin-top:18px;color:var(--wine-dark);font-weight:700}.callout-band{margin-top:18px;padding:18px 20px;border-left:3px solid var(--wine);background:linear-gradient(90deg,#a5004f0f,#ffffffe0);border-radius:18px}.callout-band p{margin-bottom:0;color:var(--wine-dark);font-size:1.03rem;font-weight:650}.process-grid{display:grid;gap:12px}.process-grid.compact{max-width:880px}.process-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}.process-card:last-child{border-bottom:0}.process-card h3{margin-bottom:6px}.process-step{display:inline-flex;justify-content:center;align-items:center;width:42px;height:42px;border-radius:999px;background:var(--wine);color:var(--canvas);font-family:Georgia,Times New Roman,serif;font-size:.98rem}.differentiator-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.76fr);gap:20px;align-items:start}.quiet-card{background:var(--canvas);box-shadow:none}.quote-panel{display:grid;align-content:start;gap:16px;min-height:100%;padding:clamp(24px,4vw,38px);border-radius:26px;background:var(--wine);box-shadow:var(--shadow);color:var(--canvas)}.quote-mark{font-size:3rem;line-height:1}.quote-panel p{margin-bottom:0;color:#fffaf6f2;font-size:1.08rem;font-weight:700}.impact-panel{background:linear-gradient(135deg,#a5004ffa,#5a0025f0),var(--wine);margin-bottom:clamp(14px,2.5vw,28px)}.impact-panel .eyebrow,.impact-panel h2,.impact-panel p{color:var(--canvas)}.impact-panel h2{max-width:880px;font-size:clamp(1.8rem,3vw,2.6rem)}.impact-panel p:last-child{margin-bottom:0;font-size:1.08rem}.philosophy-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.philosophy-item{display:grid;gap:10px;min-height:100%;padding:22px;border:1px solid var(--line);border-radius:22px;background:#ffffffd1}.philosophy-item span{color:var(--wine);font-size:1.1rem;font-weight:850}.philosophy-item p{margin-bottom:0}.portfolio-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.74fr);gap:24px;align-items:start;background:linear-gradient(135deg,#f8e5ece6,#fffaf6fa)}.portfolio-copy{display:grid;gap:16px}.portfolio-copy p{margin-bottom:0}.final-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:clamp(30px,5vw,58px);border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,#fff5f9f5,#f8e5ecdb)}.final-cta h2{max-width:680px}.final-cta .lead{max-width:760px}.portfolio-feature{display:grid;gap:24px}.portfolio-feature .card h3{margin-bottom:0}.portfolio-main{display:grid;gap:18px;max-width:860px}.portfolio-price{display:grid;gap:10px;padding:22px 24px;border:1px solid var(--line);border-radius:22px;background:#ffffffd1}.portfolio-price span{color:var(--wine);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2.2rem)}.portfolio-price p{margin-bottom:0}.cta-band{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-top:12px;margin-bottom:0;padding:clamp(28px,4vw,42px);border-radius:28px;background:var(--wine-dark);box-shadow:var(--shadow)}.cta-band h2,.cta-band p{margin-bottom:0}.cta-band h2{color:var(--canvas)}.cta-band p{color:#fffaf6d1}.cta-band .button.primary{border-color:var(--canvas);background:var(--canvas);color:var(--wine-dark);box-shadow:none}.home-contact,.contact-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);gap:36px;align-items:start}.contact-summary,.contact-note{display:grid;gap:14px;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--soft)}.contact-note img,.portrait-block img{width:72px;border-radius:16px}.contact-list{margin-top:8px}.contact-grid{display:grid;gap:10px;margin-top:6px}.contact-item{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:#ffffffb8;text-decoration:none}.contact-item span{display:grid;gap:2px;color:var(--muted)}.contact-item strong{display:block;margin-bottom:2px;color:var(--wine-dark);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.mini-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#a5004f14;color:var(--wine)}.mini-icon svg{width:18px;height:18px}.contact-list.stacked{display:grid;gap:10px}.contact-list a,.footer-contact a,.footer-social a,.site-footer nav a{color:var(--wine-dark);font-weight:750;text-decoration:none}.location-pill{width:fit-content}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--soft-shadow)}.compact-form{align-self:start}label{display:grid;gap:7px;color:var(--wine-dark);font-size:.92rem;font-weight:850}input,textarea{width:100%;border:1px solid rgba(90,0,37,.22);border-radius:14px;background:#fffdfb;color:var(--ink);font:inherit}input{min-height:46px;padding:10px 12px}textarea{resize:vertical;padding:12px}input:focus,textarea:focus{border-color:var(--wine);outline:3px solid rgba(165,0,79,.13)}.full{grid-column:1 / -1}.checkbox{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-weight:650}.checkbox input{width:18px;min-width:18px;height:18px;min-height:18px;margin-top:4px}.checkbox a{color:var(--wine-dark);font-weight:850}.legal-hero{padding-bottom:24px}.legal-content{display:grid;gap:14px;max-width:860px;margin-inline:auto}.legal-content p{margin-bottom:0;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.legal-notice{border-style:dashed!important;background:var(--soft);color:var(--wine-dark)}.site-footer{display:grid;grid-template-columns:minmax(240px,1.1fr) minmax(180px,.7fr) minmax(200px,.8fr);gap:24px;align-items:start;padding:34px 0 42px;border-top:1px solid var(--line)}.footer-brand{display:flex;gap:14px;align-items:center}.footer-logo{width:clamp(118px,13vw,156px);border:1px solid var(--line);border-radius:16px}.footer-zone{margin-top:6px;font-size:.86rem}.footer-column{display:grid;gap:10px}.footer-utility{grid-template-columns:1fr}.footer-column strong{color:var(--wine-dark)}.footer-link{display:inline-flex;gap:10px;align-items:center;text-decoration:none}.footer-contact,.footer-social{display:grid;gap:8px}.footer-contact strong{color:var(--wine-dark)}.site-footer nav{display:grid;gap:10px}.honeypot{display:none}::view-transition-old(page-content){animation:page-out .18s ease both}::view-transition-new(page-content){animation:page-in .26s ease both}@keyframes page-out{to{opacity:0;transform:translateY(4px)}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:1080px){.philosophy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:920px){.header-inner{grid-template-columns:auto 1fr auto;gap:18px}.main-nav,.header-actions{display:none}.menu-toggle{display:block;justify-self:end}.mobile-menu{display:grid;gap:0;width:calc(100% - 20px);margin:0 auto 12px;padding:0 16px;max-height:0;overflow:hidden;border:1px solid transparent;border-radius:22px;background:#fffdf8f5;box-shadow:0 18px 42px #5a00251f;opacity:0;pointer-events:none;transform:translateY(-8px);transition:max-height .24s ease,opacity .18s ease,transform .18s ease,padding .22s ease,border-color .22s ease}.site-header[data-open=true] .mobile-menu{max-height:460px;padding:14px 16px 16px;border-color:var(--line);opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-menu a{display:block;padding:8px 0;color:var(--ink);font-size:1rem;font-weight:700;text-decoration:none}.mobile-menu a.active{color:var(--wine)}.mobile-menu-divider{height:1px;margin:10px 0 12px;background:var(--line)}.mobile-menu-actions{display:grid;gap:10px}.mobile-menu .mobile-language{display:inline-flex;align-items:center;width:fit-content;padding:0;color:var(--muted);font-size:.9rem;font-weight:650}.mobile-menu .button{display:inline-flex;width:100%;min-height:42px;margin-top:2px;padding:10px 14px;border-radius:14px}.site-header[data-open=true] .menu-toggle span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}.site-header[data-open=true] .menu-toggle span:nth-child(2){opacity:0}.site-header[data-open=true] .menu-toggle span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}.hero,.intro-band,.differentiator-layout,.portfolio-band,.cta-band,.home-contact,.contact-layout{grid-template-columns:1fr}.hero{min-height:auto}.hero-media img{aspect-ratio:16 / 10}.grid.three,.grid.two,.services-grid,.philosophy-grid,.final-cta,.site-footer{grid-template-columns:1fr}.site-footer{gap:18px}}@media(max-width:620px){.site-header,.site-footer,.hero,.section,.page-hero,.cta-band{width:min(100% - 24px,1160px)}.site-header{min-height:auto}.header-inner{min-height:62px;gap:12px}.brand{gap:11px}.brand img{height:44px;border-radius:9px}.brand-copy{gap:2px}.brand-copy strong{font-size:1.08rem}.brand-copy small{max-width:160px;overflow:hidden;font-size:.62rem;text-overflow:ellipsis}.menu-toggle{width:38px;height:38px}.hero{padding:34px 0 50px}.actions,.button{width:100%}.hero-card:before,.hero-media:before{inset:-10px 14px 18px -12px}.hero-media figcaption{position:static;width:100%;border-radius:0 0 18px 18px;box-shadow:none}.intro-band,.soft-panel,.portfolio-band,.impact-panel,.contact-form,.contact-note,.portrait-block,.quote-panel{border-radius:20px}.intro-band,.portfolio-band{padding:24px 18px}.card,.contact-form,.contact-note,.portrait-block,.quote-panel,.philosophy-item{padding:20px}.contact-form{grid-template-columns:1fr}.cta-band,.final-cta{padding:24px 20px}.footer-brand{align-items:flex-start}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
