@font-face{font-family:Caviar;src:url('/assets/fonts/CaviarDreams-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Caviar;src:url('/assets/fonts/CaviarDreams-Italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:DM;src:url('/assets/fonts/DMSans-Latin.woff2') format('woff2');font-weight:100 1000;font-display:swap}
:root{--bg-deep:#e7dcee;--bg-dark:#eeeae4;--white:#302538;--gray:#65576e;--font-display:Caviar,sans-serif;--font-body:DM,sans-serif;--purple:#6b269c}
body.info-page{background:var(--ink);color:var(--white);font-family:DM,sans-serif}
body.info-page :is(.noise,.page-bg-grid,.page-orb,.hero-orb){display:none}
body.info-page :is(h1,h2,h3){font-family:Caviar,sans-serif!important;font-weight:400!important;line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
body.info-page :is(p,li){font-family:DM,sans-serif;font-size:15px;line-height:1.75;color:var(--gray)}
body.info-page .reveal{opacity:1;transform:none}
body.info-page .corner-brand{--brand-color:#6b269c}
body.info-page :is(.section-label,.blog-latest-eyebrow,.about-hero-badge){font:500 10px/1.5 DM,sans-serif;letter-spacing:.14em;color:var(--purple);background:none;border:0;padding:0}
body.info-page .policy-page{padding:150px 24px 100px}
body.info-page .policy-container{max-width:820px;margin:auto}
body.info-page .policy-title{font-size:clamp(36px,5vw,60px);color:var(--purple);margin-bottom:24px}
body.info-page .policy-card{background:none;border:0;box-shadow:none;padding:0;margin-top:52px}
body.info-page .policy-block{padding:32px 0;border-bottom:1px solid #6b269c26}
body.info-page .policy-block h2{font-size:26px;color:var(--purple);margin-bottom:20px;text-transform:none}
body.info-page .policy-block a{color:var(--purple);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
body.info-page .about-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;max-width:1180px;width:84%;padding:150px 0 0;margin:0 auto 160px;min-height:0;background:none}
body.info-page .about-hero-content{padding:0;width:100%;max-width:none}
body.info-page .about-hero-title{font-size:clamp(38px,4.5vw,60px);margin:24px 0 32px}
body.info-page .about-hero-title .italic{color:var(--purple)}
body.info-page .about-hero-text{margin-bottom:22px;text-align:left}
body.info-page .about-hero-photo-desktop{position:relative;inset:auto;width:100%;height:auto!important;margin-top:0!important;align-self:start}
body.info-page .about-hero-photo-wrapper{border-radius:24px;overflow:hidden;border:0;box-shadow:none;transform:none}
body.info-page .about-photo-img{width:100%;height:auto;object-fit:cover}
body.info-page :is(.about-services,.blog-latest-section){width:84%;max-width:1180px;margin:0 auto 160px;padding:0;background:none}
body.info-page :is(.about-services,.blog-latest-section)>.container{width:100%;max-width:none;padding:0}
body.info-page :is(.about-services-title,.blog-latest-title){font-size:clamp(30px,4vw,48px)}
body.info-page .service-block{background:#eeeae4;border:0;border-radius:22px;padding:28px;box-shadow:none}
body.info-page .service-block h3{font-size:26px;color:#6b269c}
body.info-page .contact-page{padding:150px 0 100px}
body.info-page .contact-hero{width:84%;max-width:1180px;margin:auto;padding:0;background:none}
body.info-page .contact-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:64px}
body.info-page .contact-hero .hero-title{font-size:clamp(38px,4.5vw,60px)}
body.info-page .contact-hero .hero-title em{color:var(--purple)}
body.info-page :is(.contact-right-top,.contact-top-pill-wrap){display:none}
body.info-page :is(.mail-illustration,.contact-form-card){height:auto!important;min-height:0!important;box-shadow:none;border:0;border-radius:24px}
body.info-page .mail-illustration{background:none;padding:0;margin-top:44px}
body.info-page .contact-form-card{background:#eeeae4;padding:36px}
body.info-page .contact-right{display:block}
body.info-page .contact-channel{background:none;border:0;border-bottom:1px solid #6b269c26;border-radius:0;padding:18px 0;box-shadow:none}
body.info-page :is(input,textarea,select){font-family:DM,sans-serif;color:#302538}
body.info-page .contact-form :is(input:not([type=checkbox]):not([type=hidden]),textarea,select){background:#faf8f4;border:1px solid #6b269c40;border-radius:12px;padding:14px;font-size:16px}
body.info-page .contact-form :is(input,textarea,select):focus-visible{outline:2px solid #6b269c;outline-offset:3px}
@media(max-width:800px){body.info-page .about-hero{grid-template-columns:1fr;width:90%;gap:32px;padding-top:110px;margin-bottom:100px}body.info-page .about-hero-photo-desktop{display:none}body.info-page .about-hero-photo-mobile{display:block;margin:28px 0}body.info-page :is(.about-services,.blog-latest-section){width:90%;margin-bottom:100px}body.info-page .contact-page{padding-top:110px}body.info-page .contact-hero{width:90%}body.info-page .contact-hero-inner{grid-template-columns:1fr;gap:36px}body.info-page .contact-form-card{padding:24px}body.info-page .policy-page{padding-top:110px}body.info-page .policy-block h2{font-size:24px}}
body.info-page .contact-form-card :is(h2,h3,label){color:#302538!important}
body.info-page .contact-form-card button{color:#6b269c;border:1px solid #6b269c66;background:transparent;font-family:Caviar,sans-serif}
body.info-page .contact-form-card button[type=submit]{border-radius:40px;min-height:48px;font-size:14px}
body.info-page .contact-form-card button:hover{background:#6b269c;color:#fff}
body.info-page :is(.about-hero-title,.about-hero-text,.about-hero-cta,.about-hero-photo){opacity:1!important;animation:none!important;transform:none!important}
body.info-page .breadcrumbs-mini{color:#65576e;opacity:.7}
/* About: an editorial portrait spread, distinct from the video-led services. */
body.info-page.sobre-mi-page .about-hero{background:#eeeae4;border-radius:32px;padding:48px!important;margin-top:120px;gap:48px;align-items:stretch;grid-template-columns:1.15fr 1fr;box-sizing:border-box}
body.info-page.sobre-mi-page .about-hero-content{border-top:1px solid #6b269c55;padding-top:24px}
body.info-page.sobre-mi-page .about-hero-title{margin:28px 0 32px;font-size:clamp(38px,4vw,58px)}
body.info-page.sobre-mi-page .about-hero-photo-desktop{align-self:stretch;height:auto!important;min-height:0;margin:0!important;position:relative}
body.info-page.sobre-mi-page .about-hero-photo-desktop .about-hero-photo-wrapper{position:absolute;inset:0;height:100%;width:100%;border-radius:22px}
body.info-page.sobre-mi-page .about-hero-photo-desktop picture{display:block;height:100%}
body.info-page.sobre-mi-page .about-hero-photo-desktop img{height:100%;width:100%;object-fit:cover;object-position:50% 35%;aspect-ratio:auto}
body.info-page.sobre-mi-page .about-hero-cta{margin-top:30px;padding-top:24px;border-top:1px solid #6b269c26}
body.info-page.sobre-mi-page .about-services{border-top:1px solid #6b269c40;padding-top:48px}
@media(max-width:800px){body.info-page.sobre-mi-page .about-hero{grid-template-columns:1fr;width:92%;padding:24px!important;margin-top:96px;border-radius:24px;gap:0}body.info-page.sobre-mi-page .about-hero-title{font-size:38px}body.info-page.sobre-mi-page .about-hero-photo-mobile img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}body.info-page.sobre-mi-page .about-hero-photo-desktop{display:none}}
/* Contact keeps its animated envelope, beside the form. */
body.info-page.contacto-page .contact-right-top{display:flex!important;justify-content:center;align-items:center;height:250px!important;min-height:250px!important;padding:30px 0 0;margin:12px 0 24px;overflow:visible}
body.info-page.contacto-page .contact-envelope-scene{margin-top:30px}
body.info-page.contacto-page .contact-left{gap:0}
body.info-page.contacto-page .mail-illustration{margin-top:12px}
body.info-page.contacto-page .contact-form-card{padding:40px;border-top:3px solid #6b269c}
body.info-page.contacto-page .contact-form-head{margin-bottom:28px}
body.info-page.contacto-page .form-optional{color:#65576e}
body.info-page.contacto-page .contact-form label{text-transform:none;font-size:13px;letter-spacing:normal}
body.info-page.contacto-page .contact-form :is(input,textarea)::placeholder{color:#716678;opacity:1}
@media(max-width:800px){body.info-page.contacto-page .contact-right-top{height:200px!important;min-height:200px!important;margin:0 0 20px}body.info-page.contacto-page .contact-form-card{padding:26px}}
@media(prefers-reduced-motion:reduce){body.info-page.contacto-page :is(.contact-envelope-scene,.env-paper,.env-flap){animation:none!important}}
/* Intro and envelope above; contact methods and form share the next row. */
body.info-page.contacto-page .contact-left{display:contents}
body.info-page.contacto-page .contact-hero-inner{grid-template-columns:1fr 1fr;align-items:start;row-gap:48px}
body.info-page.contacto-page .contact-left-top{grid-column:1;grid-row:1}
body.info-page.contacto-page .contact-right-top{grid-column:2;grid-row:1;align-self:center}
body.info-page.contacto-page .mail-illustration{grid-column:1;grid-row:2;margin:0;padding-top:0}
body.info-page.contacto-page .contact-right{grid-column:2;grid-row:2}
body.info-page.contacto-page .contact-form-card{border:0!important;margin:0}
body.info-page.contacto-page .contact-form-card::before,body.info-page.contacto-page .contact-form-card::after{display:none}
@media(max-width:800px){body.info-page.contacto-page .contact-hero-inner{grid-template-columns:1fr;gap:32px}body.info-page.contacto-page .contact-left-top{grid-column:1;grid-row:1}body.info-page.contacto-page .contact-right-top{grid-column:1;grid-row:2}body.info-page.contacto-page .mail-illustration{grid-column:1;grid-row:3}body.info-page.contacto-page .contact-right{grid-column:1;grid-row:4}}
