:root{--paper:#f7fbff;--ink:#293b4b;--muted:#627789;--accent:#567f9e;--line:#d5e5f1;--card:#e9f3fa;--lavender:#fde9e6;--green:#e5f1fa;--button:#345d7c;--on-button:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}p{font-size:14px;line-height:1.85;color:var(--muted)}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-2.8px;line-height:1.07}em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.wrap{max-width:1400px;margin:auto;padding:80px 70px}.preview{text-align:center;background:var(--green);font-size:8px;letter-spacing:2px;padding:9px}.eyebrow{font-size:9px;letter-spacing:2px;line-height:1.7;display:block;color:var(--muted);margin-bottom:25px}header{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 70px;height:105px;border-bottom:1px solid var(--line)}.brand{flex-shrink:0}.logo-crop{position:relative;display:block;width:172px;height:58px;overflow:hidden}.logo-crop img{position:absolute;max-width:none;width:185px;height:185px;top:-62px;left:-7px}nav{display:flex;gap:28px}nav a,.header-cta{font-size:11px}.header-actions{display:flex;align-items:center;gap:20px}.theme-toggle{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);display:grid;place-items:center;font-size:20px;padding:0}.theme-toggle:hover{background:var(--card)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:65px;padding-bottom:80px}.hero h1{font-size:clamp(48px,4.7vw,68px);margin:0 0 28px;letter-spacing:-3.8px}.hero h1 em{font-size:.89em;letter-spacing:-2.8px;white-space:nowrap}.hero-copy>p{max-width:410px;font-size:13px}.actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{background:var(--button);color:var(--on-button);display:inline-flex;padding:18px 23px;font-size:11px;border-radius:30px;transition:transform .2s}.button:hover{transform:translateY(-3px)}.text-link{font-size:11px;text-underline-offset:5px}.text-link:hover{text-decoration:underline}.hero-note{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:10px;margin-top:35px}.hero-note i{width:6px;height:6px;background:var(--accent);border-radius:50%}.hero-art{position:relative;padding:22px 0 20px}.hero-photo{position:relative;aspect-ratio:1.06;margin:0;border-radius:140px 140px 18px 18px;overflow:hidden;background:var(--card)}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:58% 50%}.hero-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#241e2bc4);pointer-events:none}.hero-photo figcaption{position:absolute;left:35px;bottom:30px;z-index:1;color:#fff;font-size:32px;line-height:1.16;letter-spacing:-1px}.hero-photo figcaption em{color:#fff0ed}.sun{position:absolute;z-index:2;right:-24px;top:-20px;font-size:95px;line-height:1;color:#8bbbdc;transform:rotate(8deg)}.play{position:absolute;z-index:2;top:48%;left:50%;transform:translate(-50%,-50%);width:55px;height:55px;background:#fff3;border:1px solid #fff9;color:#fff;border-radius:50%;display:grid;place-items:center;backdrop-filter:blur(4px);font-size:14px;padding-left:3px}.memory-note{position:absolute;right:-20px;bottom:0;background:var(--lavender);padding:19px 25px;transform:rotate(-4deg);border-radius:4px;font-family:Georgia,serif;font-size:16px;line-height:1.3;box-shadow:0 8px 25px #25152212}.memory-note>span{float:left;font-size:28px;margin-right:12px}.ribbon{display:flex;gap:25px;justify-content:space-around;background:var(--card);padding:28px max(35px,calc((100vw - 1260px)/2));font-size:10px;letter-spacing:2px}.ribbon i{font-style:normal;color:var(--accent)}.section-heading{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:40px;align-items:start;margin-bottom:40px}.section-heading h2{font-size:38px;margin:0;letter-spacing:-1.7px}.section-heading p{font-size:12px;margin:0}.services{display:grid;grid-template-columns:1fr 1fr;gap:25px}.services article{background:var(--card);padding:42px;border-radius:12px;position:relative}.services article:nth-child(2){background:var(--lavender)}.services h3{font-size:32px;letter-spacing:-1px;line-height:1.12;margin:30px 0 20px}.services p{font-size:13px;max-width:420px}.number{font-size:10px;color:var(--muted)}.service-icon{float:right;font-size:44px;line-height:1;color:var(--accent)}.services .text-link{display:inline-block;margin-top:18px}.film-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:center;padding-top:20px}.film-intro h2{font-size:47px;letter-spacing:-2px;margin-bottom:25px}.film-intro p{max-width:290px;font-size:12px}.film-intro .text-link{display:inline-block;margin-top:15px}.film-frame{position:relative;display:block;overflow:hidden;border-radius:12px;background:var(--card)}.film-frame img{width:100%;aspect-ratio:1.6;object-fit:cover;transition:transform .7s}.film-frame:hover img{transform:scale(1.03)}.film-frame:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#211a2cb3)}.film-play{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);color:white;border:1px solid #fff9;background:#fff2;border-radius:50%;width:48px;height:48px;display:grid;place-items:center}.film-title{position:absolute;left:25px;right:25px;bottom:23px;color:white;z-index:1;font-size:12px}.film-title b{float:right;font-weight:400}.process{border-block:1px solid var(--line)}.process h2{font-size:42px;letter-spacing:-1.9px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps article>span{font-family:Georgia,serif;font-size:20px;color:var(--accent)}.steps h3{font-size:18px;margin:20px 0 12px}.steps p{font-size:12px;margin:0}.about{display:grid;grid-template-columns:1fr 1fr;gap:50px 80px;align-items:center}.about h2{font-size:42px;letter-spacing:-1.9px}.about>div>p{font-size:12px;max-width:360px}.owner{display:grid;grid-template-columns:85px 1fr;gap:22px}.portrait{width:85px;height:110px;overflow:hidden;border-radius:60px 60px 10px 10px}.portrait img{width:100%;height:100%;object-fit:cover;transform:scale(1.35);transform-origin:50% 27%}.owner .eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:12px}.owner h3{font-size:25px;letter-spacing:-.8px;margin-bottom:15px}.owner p{font-size:12px}.owner .text-link{font-size:10px}.manifesto{grid-column:1/-1;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:20px!important;line-height:1.7;margin:0;color:var(--accent);max-width:none!important}.faq{max-width:1060px;padding-top:20px}.faq h2{font-size:42px;letter-spacing:-2px}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:14px}summary::-webkit-details-marker{display:none}summary span{color:var(--accent)}details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;max-width:700px;margin:20px 0 0}.contact{background:var(--green)}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px}.contact h2{font-size:60px;letter-spacing:-2.5px;margin-bottom:25px}.contact p{max-width:360px;font-size:13px}.contact .button{margin-top:18px}.email,.phone{display:block;font-size:11px;margin-top:20px}.phone{color:var(--muted);margin-top:10px}form{border-left:1px solid var(--line);padding-left:45px}form h3{font-size:24px;letter-spacing:-.7px;margin-bottom:12px}form p{font-size:11px!important}label{display:block;font-size:10px;margin:23px 0 7px}input,select,textarea{width:100%;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--muted);border-radius:0;font-size:12px;padding:12px 0}select option{background:var(--paper)}textarea{resize:vertical}form button{display:flex;justify-content:space-between;border:1px solid var(--muted);background:transparent;color:var(--ink);border-radius:5px;padding:15px;width:100%;font-size:11px;margin-top:24px}form button:hover{background:var(--paper)}#brief-status{font-size:10px!important}.socials{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:40px;border-bottom:1px solid var(--line)}.socials .eyebrow{font-size:7px;margin-bottom:8px}.socials h3{font-size:20px;letter-spacing:-.6px;margin:0}.socials>div:last-child{display:flex;gap:30px;font-size:11px}footer.wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;padding-block:30px}footer p{font-size:10px;margin:0}footer>a:last-of-type{font-size:10px}.footer-bottom{flex-basis:100%;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;font-size:8px;color:var(--muted)}.reveal.ready{opacity:0;transform:translateY(25px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:fixed;top:-100px;left:15px;z-index:100;background:var(--paper);padding:15px}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
html[data-theme="dark"]{--paper:#1c2833;--ink:#edf5fc;--muted:#b8c9d9;--accent:#a9cce7;--line:#405362;--card:#26333f;--lavender:#433039;--green:#233542;--button:#b9dbf2;--on-button:#1d3345}html[data-theme="dark"] .logo-crop img{filter:brightness(0) invert(1)}html[data-theme="dark"] .sun{color:#a9cce7}
@media(max-width:1100px){.wrap{padding:60px 40px}header{padding-inline:40px;gap:18px}nav{gap:18px}nav a,.header-cta{font-size:10px}.header-actions{gap:14px}.hero{gap:40px}.hero h1{font-size:53px}.hero h1 em{white-space:normal}.section-heading{grid-template-columns:1fr 2fr}.section-heading p{grid-column:2}.contact-grid{gap:55px}.about{gap:45px}.film-section{gap:45px}.sun{right:-15px;font-size:75px}}
@media(max-width:800px){.wrap{padding:50px 28px}header{padding-inline:28px;height:90px}.logo-crop{width:128px;height:48px}.logo-crop img{width:145px;height:145px;top:-49px;left:-5px}nav{gap:12px}nav a{font-size:9px}.header-cta{font-size:9px}.header-actions{gap:12px}.theme-toggle{width:32px;height:32px}.hero{gap:28px}.hero h1{font-size:45px;letter-spacing:-2.7px}.hero-copy>p{font-size:12px}.hero-photo{aspect-ratio:.8;border-radius:100px 100px 15px 15px}.hero-photo figcaption{font-size:26px;left:22px}.memory-note{font-size:13px;right:-8px;padding:15px}.sun{font-size:65px;right:-10px}.section-heading h2,.process h2,.about h2,.faq h2{font-size:35px}.services article{padding:28px}.services h3{font-size:28px}.services p{font-size:12px}.film-intro h2{font-size:38px}.film-section{gap:30px}.about{grid-template-columns:1fr}.owner{max-width:560px}.steps{gap:25px}.contact-grid{gap:35px}.contact h2{font-size:48px}form{padding-left:25px}.socials>div:last-child{gap:20px;font-size:10px}}
@media(max-width:600px){html{scroll-padding-top:20px}.preview{font-size:6px;padding:8px;letter-spacing:1.7px}header{padding:0 22px;height:80px;gap:12px;position:relative}.logo-crop{width:108px;height:44px}.logo-crop img{width:122px;height:122px;top:-41px;left:-5px}.header-actions{gap:12px}.header-cta{font-size:8px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:24px;height:32px;border:0;padding:0;background:transparent}.menu-toggle span{width:21px;height:1px;background:var(--ink)}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3px) rotate(-45deg)}nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:25px;z-index:10;flex-direction:column;gap:25px}nav.open{display:flex}nav a{font-size:13px}.wrap{padding:45px 22px}.hero{grid-template-columns:1fr;gap:30px;padding-top:36px;padding-bottom:40px}.hero .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:22px}.hero h1{font-size:clamp(46px,13vw,66px);letter-spacing:-3px;margin-bottom:24px}.hero h1 em{font-size:.82em;letter-spacing:-2px}.hero-copy>p{font-size:12px;max-width:none}.actions{gap:20px;margin-top:25px}.button{padding:16px 20px;font-size:10px}.text-link{font-size:10px}.hero-note{font-size:8px;margin-top:26px}.hero-art{padding-top:10px}.hero-photo{aspect-ratio:1.12;border-radius:100px 100px 14px 14px}.hero-photo figcaption{font-size:26px;bottom:25px}.sun{top:-6px;right:-6px;font-size:63px}.memory-note{right:-5px;bottom:0;font-size:13px;padding:14px 17px}.ribbon{gap:10px;padding:22px;font-size:7px;letter-spacing:.7px}.section-heading{display:block;margin-bottom:28px}.eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:20px}.section-heading h2{font-size:32px;letter-spacing:-1.5px}.section-heading p{font-size:12px;margin-top:20px}.services{grid-template-columns:1fr;gap:16px}.services article{padding:28px}.services h3{font-size:29px}.service-icon{font-size:38px}.film-section{grid-template-columns:1fr;gap:30px;padding-top:5px}.film-intro h2{font-size:37px;letter-spacing:-1.6px}.film-intro h2 br:nth-of-type(2){display:none}.film-intro p{max-width:none}.film-frame img{aspect-ratio:1.35}.film-title{left:18px;right:18px;bottom:20px;font-size:10px}.film-play{width:42px;height:42px}.process h2,.about h2,.faq h2{font-size:33px;letter-spacing:-1.5px}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps article{position:relative;padding-left:45px}.steps article>span{position:absolute;left:0;top:0;font-size:18px}.steps h3{margin:0 0 10px;font-size:17px}.steps p{font-size:12px}.about{gap:30px}.about>div>p{max-width:none}.owner{grid-template-columns:65px 1fr;gap:18px}.portrait{width:65px;height:90px}.owner .eyebrow{font-size:6px;letter-spacing:1px}.owner h3{font-size:23px}.owner p{font-size:11px}.owner .text-link{font-size:9px}.manifesto{font-size:16px!important;text-align:left;line-height:1.8}.faq{padding-top:5px}summary{font-size:12px;line-height:1.6}.faq details{padding:20px 0}details p{font-size:11px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:47px}.contact p{font-size:12px}.email,.phone{font-size:10px}form{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}form h3{font-size:23px}label{font-size:10px}input,select,textarea{font-size:16px}.socials{display:block;padding-block:28px}.socials>div:last-child{flex-wrap:wrap;gap:20px;margin-top:25px}.socials h3{font-size:18px}footer.wrap{padding-block:25px;gap:20px}footer p{font-size:9px}footer>a:last-of-type{font-size:8px}.footer-bottom{font-size:7px}}
@media(max-width:360px){header{padding-inline:18px}.header-actions{gap:9px}.header-cta{font-size:7px}.logo-crop{width:100px}.theme-toggle{width:30px;height:30px}.hero h1{font-size:45px}.actions{gap:15px}.actions .text-link{font-size:9px}.ribbon{font-size:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal.ready{opacity:1;transform:none}}
@media print{.theme-toggle,.menu-toggle,.preview,form{display:none}.reveal.ready{opacity:1;transform:none}html[data-theme="dark"]{--paper:white;--ink:black;--muted:#444;--accent:#444}html[data-theme="dark"] .logo-crop img{filter:none}}

.memory-note{color:#744b55}.sun{color:#e5a5a0}html[data-theme="dark"] .memory-note{color:#f1c3ca}html[data-theme="dark"] .sun{color:#e5a5a0}

.local-seo{border-top:1px solid var(--line)}.local-seo h2{font-size:42px;letter-spacing:-1.9px}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 55px;margin:35px 0}.local-grid h3{font-size:20px;letter-spacing:-.5px}.local-grid p{font-size:13px}@media(max-width:600px){.local-seo h2{font-size:33px;letter-spacing:-1.5px}.local-grid{grid-template-columns:1fr;gap:22px;margin:28px 0}.local-grid h3{font-size:18px}.local-grid p{font-size:12px}}

.contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-privacy{font-size:10px!important;line-height:1.6}.contact-whatsapp{display:inline-block;font-size:11px;text-decoration:underline;text-underline-offset:4px;margin-top:12px;line-height:1.7}#brief-status:empty{display:none}#brief-status{line-height:1.8}#brief-status[data-state="success"]{color:#d4e9c1}#brief-status[data-state="error"]{color:#ffd2ca}#brief-form button:disabled{opacity:.65;cursor:wait}.contact #brief-form input:invalid:not(:placeholder-shown){border-bottom-color:#db9c8d}
html[data-theme="light"] #brief-status[data-state="success"]{color:#345d7c}html[data-theme="light"] #brief-status[data-state="error"]{color:#984337}