:root{--ink:#352449;--purple:#654495;--lilac:#bfa9e3;--pale:#ece4f5;--yellow:#e9ef89;--paper:#f8f7f2;--muted:#72687d;--line:#35244923;--heading:'Fredoka',Arial,sans-serif;--body:'Nunito Sans',Arial,sans-serif;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0}main{overflow:clip}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:500}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,summary,input,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--purple);outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}::selection{background:var(--yellow)}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.section{padding-block:100px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--purple);color:white;padding:17px 26px;border:0;border-radius:40px;min-height:57px;line-height:1.5;font-size:16px;font-weight:700;max-width:100%;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s}.button span{font-size:24px;font-weight:400;line-height:1}.button:hover{transform:translateY(-3px);background:#4f317b;box-shadow:0 9px 20px #35244920}.button-small{font-size:14px;min-height:48px;padding:12px 22px}.button-yellow{background:var(--yellow);color:var(--ink)}.button-yellow:hover{background:#f4f8b4}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.11em;line-height:1.8;color:var(--purple);margin-bottom:20px}h2{font-size:clamp(36px,4vw,55px);line-height:1.1;letter-spacing:-.035em}h2 span{color:var(--purple)}.section-heading{text-align:center}.intro{font-size:18px;line-height:1.8;color:var(--muted);max-width:640px;margin:23px auto 0}.skip{position:fixed;left:20px;top:-80px;z-index:20;background:var(--purple);color:white;padding:16px}.skip:focus{top:12px}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;height:112px}.logo{font-family:var(--heading);font-size:35px;font-weight:500;letter-spacing:-.045em;white-space:nowrap;line-height:1.1;display:inline-block}.logo>span{color:var(--purple);font-weight:400;margin-inline:2px}.logo small{display:block;font-family:var(--body);font-size:9px;letter-spacing:.22em;font-weight:800;margin-top:8px;text-align:center}.header-message{font-size:13px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-top:32px;padding-bottom:80px;min-height:700px}.hero h1{font-size:clamp(55px,5.8vw,82px);line-height:1.015;letter-spacing:-.055em}.hero h1>span{color:var(--purple);position:relative;display:inline-block;z-index:0}.hero h1>span:after{content:'';position:absolute;bottom:1px;left:-5px;right:-8px;height:19px;background:var(--yellow);z-index:-1;border-radius:15px;transform:rotate(-3deg)}.hero-description{font-size:23px;line-height:1.5;font-weight:600;margin:25px 0 14px}.hero-support{font-size:17px;line-height:1.75;color:var(--muted);max-width:445px;margin-bottom:28px}.hero-tags{display:flex;gap:15px;flex-wrap:wrap;margin-top:25px;font-size:12px;font-weight:700;color:var(--muted)}.hero-tags span{padding:8px 13px;border-radius:30px;border:1px solid var(--line)}.hero-visual{position:relative;margin:15px 0 25px}.hero-visual>img{width:100%;height:560px;object-position:center 45%;border-radius:160px 160px 55px 55px;background:var(--lilac)}.photo-tag{position:absolute;bottom:-25px;left:28px;right:28px;background:var(--yellow);padding:20px 25px;text-align:center;border-radius:20px;transform:rotate(-3deg);box-shadow:0 8px 0 #3524490a}.photo-tag span{display:block;font-size:10px;font-weight:800;letter-spacing:.16em;margin-bottom:7px}.photo-tag strong{font-family:var(--heading);font-size:29px;font-weight:500}.round-tag{position:absolute;right:-24px;top:35px;display:grid;place-content:center;text-align:center;width:110px;height:110px;border-radius:50%;background:var(--purple);color:white;font-family:var(--heading);font-size:17px;transform:rotate(10deg);box-shadow:0 0 0 8px var(--paper)}.ticker{background:var(--yellow);padding:26px 25px;display:flex;justify-content:center;align-items:center;gap:55px;font-size:12px;font-weight:800;letter-spacing:.08em}.ticker i{font-size:21px;font-style:normal;color:var(--purple)}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:48px}.service{padding:29px;border-radius:27px;border:1px solid #fff;background:white;display:flex;flex-direction:column;align-items:flex-start;transition:box-shadow .3s,translate .3s;min-width:0}.service:nth-child(2),.service:nth-child(6){background:var(--pale)}.service:nth-child(3){background:#f1f3d4}.service-no{font-family:var(--heading);font-size:22px;color:var(--purple);background:#ffffffb3;display:grid;place-items:center;border-radius:15px;width:48px;height:48px;box-shadow:inset 0 0 0 1px var(--line);margin-bottom:23px}.service h3{font-size:25px;line-height:1.2;margin-bottom:15px}.service p{font-size:16px;line-height:1.75;color:var(--muted);margin-bottom:25px}.service>a{margin-top:auto;display:flex;gap:12px;align-items:center;font-size:14px;font-weight:700;color:var(--purple);border-bottom:1px solid #65449544;padding-bottom:6px}.service>a span{font-size:22px}.service:hover{box-shadow:0 10px 30px #3524490b}.about{background:var(--pale);border-radius:60px 60px 0 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-photo{position:relative;padding-bottom:30px}.about-photo img{width:100%;height:490px;border-radius:35px 100px 35px 35px;object-position:45% center}.photo-caption{display:block;position:absolute;bottom:10px;left:25px;right:25px;padding:21px;background:white;border-radius:20px;text-align:center;font-family:var(--heading);font-size:22px;transform:rotate(-2deg)}.about-copy>p:not(.eyebrow){font-size:17px;line-height:1.85;color:var(--muted);margin-top:23px}.about-values{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.about-values span{font-size:12px;padding:8px 12px;background:#ffffff85;border-radius:30px;color:var(--purple);font-weight:700}.life-layout{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:35px;background:white;overflow:hidden;margin-top:45px}.life-copy{padding:45px}.life-layout>img{width:100%;height:100%;min-height:450px;object-position:45% center}.life-tabs{display:flex;gap:5px;padding:5px;background:var(--pale);border-radius:40px;margin-bottom:35px}.life-tabs button{flex:1;border:none;border-radius:30px;padding:12px 8px;font-weight:700;color:var(--purple);background:none;cursor:pointer;font-size:14px}.life-tabs [aria-selected=true]{background:var(--purple);color:white}.life-number{font-size:11px;color:var(--purple);font-weight:800;letter-spacing:.07em}.life-panel h3{font-size:34px;line-height:1.13;margin:16px 0}.life-panel p{font-size:16px;line-height:1.8;color:var(--muted);min-height:118px;margin-bottom:25px}.steps{background:var(--purple);color:white;text-align:center;border-radius:60px 60px 0 0}.steps .eyebrow{color:var(--yellow)}.steps h2 span{color:var(--yellow)}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin:45px 0 38px}.steps-grid b{font-family:var(--heading);font-size:32px;font-weight:500;background:var(--yellow);color:var(--ink);display:grid;place-items:center;width:60px;height:60px;border-radius:22px;margin:0 auto 22px;transform:rotate(-7deg)}.steps-grid article:nth-child(2) b{transform:rotate(7deg)}.steps-grid h3{font-size:26px;margin-bottom:15px}.steps-grid p{font-size:16px;line-height:1.8;color:#e0d7ed}.faq-list{max-width:840px;margin:40px auto 0}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{list-style:none;position:relative;cursor:pointer;padding:24px 35px 24px 0;font-size:18px;font-weight:700;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:5px;top:21px;font-size:25px;color:var(--purple)}details[open] summary:after{content:'−'}details p{font-size:16px;line-height:1.8;color:var(--muted);padding:0 30px 25px 0}.reference-note{max-width:700px;margin:28px auto 0;text-align:center;font-size:12px;line-height:1.8;color:var(--muted)}.reference-note a{text-decoration:underline}.contact{background:var(--yellow);border-radius:60px 60px 0 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.contact-copy>p:not(.eyebrow){font-size:18px;line-height:1.8;margin-top:25px;max-width:440px}.contact-note{margin-top:28px;max-width:420px;border-top:1px solid #35244930;padding-top:20px}.contact-note strong{font-size:14px}.contact-note p{font-size:14px;line-height:1.7;margin-top:7px;color:#5d5b3d}.contact-form{padding:35px;background:var(--paper);border-radius:30px;box-shadow:8px 10px 0 #35244910}.contact-form label{display:block;font-size:14px;font-weight:700;margin-bottom:20px}.contact-form input,.contact-form select{display:block;width:100%;min-width:0;min-height:52px;margin-top:8px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);padding:13px 14px;font-size:16px}.contact-form input::placeholder{color:#8d8595}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form .button{width:100%;font-size:14px;gap:17px}.privacy-note{font-size:12px;color:var(--muted);line-height:1.7;text-align:center;margin-top:16px}#form-status{font-size:14px;line-height:1.8;margin-top:15px;color:var(--purple)}#form-status:empty{display:none}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:45px 0}.footer-top>p{font-family:var(--heading);font-size:22px;line-height:1.3;color:var(--purple)}.back-top{font-size:14px;font-weight:700}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding:23px 0;font-size:11px;line-height:1.8;color:var(--muted)}.entrance{animation:enter .9s cubic-bezier(.2,.7,.3,1) both}.hero h1{animation-delay:.1s}.hero-description{animation-delay:.18s}.hero-support{animation-delay:.22s}.hero .button{animation-delay:.3s}.hero-tags{animation-delay:.35s}.hero-visual{animation-delay:.16s}@keyframes enter{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}.reveal{transition:opacity .8s ease,translate .8s cubic-bezier(.2,.7,.3,1)}.reveal.pending{opacity:0;translate:0 25px}.from-left.pending{translate:-25px 0}.from-right.pending{translate:25px 0}.reveal:focus-within{opacity:1;translate:0 0}[hidden]{display:none!important}
@media(max-width:1100px){.wrap{width:calc(100% - 60px)}.header-message{display:none}.hero{gap:35px}.hero-visual>img{height:520px}.round-tag{right:-12px;width:90px;height:90px;font-size:15px}.hero h1{font-size:65px}.hero-description{font-size:21px}.services-grid{gap:16px}.service{padding:24px}.service h3{font-size:23px}.about-grid,.contact-grid{gap:40px}.about-photo img{height:500px}.life-copy{padding:30px}.life-panel p{min-height:145px}.steps-grid{gap:30px}.ticker{gap:25px;font-size:11px}}
@media(max-width:760px){body{text-align:center}.wrap{width:calc(100% - 40px)}.header{height:105px;justify-content:center}.header>.button{display:none}.logo{font-size:36px}.hero{grid-template-columns:1fr;gap:35px;padding-top:20px;padding-bottom:70px;min-height:0}.hero .eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:20px}.hero h1{font-size:clamp(55px,11.5vw,79px)}.hero-description{font-size:22px;margin-top:23px}.hero-support{font-size:17px;margin:0 auto 26px;max-width:460px}.hero-tags{justify-content:center;margin-top:22px;gap:10px}.hero-visual{width:min(100% - 15px,470px);margin:5px auto 25px}.hero-visual>img{height:470px;border-radius:130px 130px 45px 45px;object-position:center 45%}.round-tag{right:-12px;top:18px;width:90px;height:90px;font-size:15px;box-shadow:0 0 0 6px var(--paper)}.photo-tag{left:18px;right:18px;padding:18px}.photo-tag strong{font-size:27px}.ticker{flex-direction:column;gap:11px;padding:25px 20px;font-size:12px}.ticker i{font-size:12px}.section{padding-block:70px}h2{font-size:40px;line-height:1.1}.eyebrow{font-size:11px;letter-spacing:.08em}.intro{font-size:17px}.services-grid{grid-template-columns:1fr;gap:18px;max-width:450px;margin:35px auto 0}.service{padding:30px;align-items:center}.service h3{font-size:28px}.service p{font-size:17px}.service>a{font-size:14px}.service-no{margin-bottom:20px}.about{border-radius:35px 35px 0 0}.about-grid{grid-template-columns:1fr;gap:30px}.about-photo{width:100%;max-width:500px;margin:auto}.about-photo img{height:370px;border-radius:25px 70px 25px 25px}.photo-caption{font-size:19px;padding:18px;left:16px;right:16px}.about-copy>p:not(.eyebrow){font-size:17px}.about-values{justify-content:center}.life-layout{grid-template-columns:1fr;border-radius:25px;max-width:500px;margin:35px auto 0}.life-copy{padding:27px 23px}.life-panel h3{font-size:32px}.life-panel p{min-height:0;font-size:17px}.life-layout>img{height:320px;min-height:0;object-position:center}.life-tabs{margin-bottom:27px}.life-tabs button{font-size:14px}.steps{border-radius:35px 35px 0 0}.steps-grid{grid-template-columns:1fr;gap:35px;max-width:370px;margin:35px auto}.steps-grid p{font-size:17px}.steps-grid h3{font-size:28px}.faq-list{margin-top:30px}summary{font-size:17px;padding-left:20px;padding-right:30px}details p{font-size:16px;padding-right:10px;padding-left:10px}.contact{border-radius:35px 35px 0 0}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-copy>p:not(.eyebrow),.contact-note{margin-inline:auto}.contact-copy>p:not(.eyebrow){font-size:17px}.contact-form{padding:26px 20px;border-radius:25px;max-width:500px;width:100%;margin:auto}.form-row{grid-template-columns:1fr;gap:0}.contact-form label{text-align:center}.contact-form input,.contact-form select{text-align:center}.contact-form .button{font-size:13px;gap:12px;padding-inline:16px}.button{font-size:15px;gap:20px;padding-inline:22px}.footer-top{flex-direction:column;padding:35px 0;gap:25px}.footer-top>p{font-size:24px}.footer-bottom{flex-direction:column;text-align:center;gap:10px;font-size:12px}.from-left.pending,.from-right.pending{translate:0 25px}}
@media(max-width:380px){.hero h1{font-size:55px}.hero-visual>img{height:405px}h2{font-size:35px}.hero-description{font-size:20px}.button{font-size:14px}.contact-form .button{font-size:12px;gap:8px}.service{padding:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;translate:none}}

.privacy-note a{text-decoration:underline}

/* Contact channels replace the former form; external map is opt-in. */
.direct-contact{background:var(--contact-paper);color:var(--contact-ink);padding:30px;border:1px solid color-mix(in srgb,var(--contact-accent) 25%,transparent);border-radius:12px;text-align:left;min-width:0;width:100%;box-sizing:border-box}
.direct-contact h3{color:var(--contact-ink);font-size:32px;margin:10px 0 24px}.direct-contact .eyebrow{color:var(--contact-accent)}
.contact-detail{margin:22px 0}.contact-detail strong{display:block;font-size:14px;margin-bottom:8px}.contact-detail>span,.contact-detail address{font-size:16px;line-height:1.6;font-style:normal}
.direct-actions{display:flex;flex-wrap:wrap;gap:12px}.direct-contact .button{background:var(--contact-accent);color:#fff;border:1px solid var(--contact-accent);font-size:14px;white-space:normal;line-height:1.4;padding:14px 18px;justify-content:center}.direct-contact .button.secondary{background:transparent;color:var(--contact-ink)}
.direct-contact .contact-disclaimer,.direct-contact .contact-feedback{font-size:12px;line-height:1.7;margin:20px 0;color:var(--contact-ink)}.contact-feedback{border-left:2px solid var(--contact-accent);padding-left:12px}
.contact-map{margin-top:26px}.map-host{min-height:260px;overflow:hidden;border:1px solid color-mix(in srgb,var(--contact-accent) 30%,transparent);border-radius:8px;background:color-mix(in srgb,var(--contact-accent) 8%,var(--contact-paper))}.map-placeholder{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px}.map-label{font-size:11px;letter-spacing:.2em;color:var(--contact-accent)}.map-placeholder h4{font-size:22px;margin:0}.map-placeholder p{font-size:13px;line-height:1.6;margin:0}.map-placeholder small{font-size:11px;line-height:1.5}.map-host iframe{display:block;width:100%;height:300px;border:0}.map-external{display:inline-block;font-size:13px;text-decoration:underline;margin-top:14px;color:var(--contact-ink)}
@media(max-width:600px){.direct-contact{padding:23px 18px}.direct-actions{flex-direction:column}.direct-actions .button{width:100%}.direct-contact h3{font-size:29px}}

/* Contact details sit directly on the section, centered in a vertical flow. */
#contato .contact-grid{display:flex;flex-direction:column;align-items:center;gap:36px}
#contato .contact-grid>div,#contato .contact-copy,#contato .contact-channels{text-align:center;width:100%}
#contato .direct-contact{display:flex;flex-direction:column;align-items:center;gap:0;background:none;border:0;border-radius:0;box-shadow:none;padding:0;text-align:center;margin:0 auto}
#contato .contact-detail{margin:26px 0}
#contato .contact-detail strong{font-size:.875rem;line-height:1.5;margin-bottom:8px}
#contato .contact-detail>span,#contato .contact-detail address{font-size:1rem;line-height:1.75}
#contato .direct-actions{display:flex;flex-direction:column;align-items:center;gap:14px}
#contato .direct-actions .button{width:100%;max-width:360px;min-height:52px;justify-content:center;gap:18px;font-size:.9375rem;line-height:1.5}
#contato .contact-feedback{border:0;padding:0;font-size:.875rem;max-width:480px;margin:20px auto}
#contato .contact-map{width:100%;margin:24px auto 0}
#contato .map-host iframe{height:320px}
#contato .map-label{font-size:.875rem}
#contato .map-placeholder p,#contato .map-external{font-size:.875rem;line-height:1.7}
#contato .map-placeholder small{font-size:.75rem;line-height:1.6}
#contato .map-placeholder .button{font-size:.875rem;min-height:48px}
#contato .map-placeholder h4{font-weight:400;margin:0;line-height:1.2}
#contato .eyebrow{font-size:.875rem;line-height:1.6}
@media(max-width:600px){
 #contato .contact-grid{gap:26px}
 #contato .map-host iframe{height:280px}
 #contato .map-placeholder{padding:28px 18px}
 #contato .direct-actions .button{max-width:360px}
}

/* Pata & Prosa: generous rounded map, playful type and purple actions. */
#contato .contact-grid{max-width:780px;gap:22px}
#contato h2{font-size:clamp(2.125rem,6vw,3.5rem);line-height:1.13;max-width:660px;margin-inline:auto}
#contato .contact-copy>p:not(.eyebrow){max-width:510px;margin:24px auto 0;font-size:1.0625rem;line-height:1.8}
#contato .contact-detail strong{font-family:var(--heading);font-size:1.125rem;font-weight:500;color:var(--purple)}
#contato .direct-actions .button{border-radius:16px;padding-block:16px}
#contato .contact-map{margin-top:26px}
#contato .map-host{border:2px solid var(--purple);border-radius:32px;background:var(--paper);box-shadow:6px 7px 0 #65449516}
#contato .map-placeholder{min-height:290px}
#contato .map-placeholder h4{font-family:var(--heading);font-size:1.875rem;font-weight:500}
#contato .map-load{border-radius:14px}
#contato .map-external{font-weight:700}
