@font-face{font-family:"Archivo";src:url("/assets/fonts/archivo-v25-latin-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("/assets/fonts/archivo-v25-latin-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("/assets/fonts/source-serif-4-v14-latin-600italic.woff2") format("woff2");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("/assets/fonts/source-serif-4-v14-latin-700italic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"Rethink Sans";src:url("/assets/fonts/rethink-sans-v7-latin-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Rethink Sans";src:url("/assets/fonts/rethink-sans-v7-latin-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
--ink-0:#140A0F;
--ink-1:#1C0D15;
--ink-2:#260F1C;
--wine:#5D2F3E;
--wine-2:#763A4E;
--rasp:#D2456F;
--rasp-2:#B23A5E;
--coral:#F28C90;
--cream:#F4D6BE;
--white:#FFFFFF;
--text:#F7E7DA;
--text-soft:#D8B7A7;
--text-mut:#B08D82;
--ink-text:#1C0D15;

--grad-accent:linear-gradient(180deg,#E75C81,#C23C64);
--grad-hero:radial-gradient(125% 105% at 82% -5%,#3A1622 0%,#22101A 42%,#140A0F 100%);
--glass:linear-gradient(160deg,rgba(118,58,78,.30),rgba(38,15,28,.44));
--glass-soft:rgba(244,214,190,.06);
--field:rgba(244,214,190,.05);

--sh-1:0 3px 14px rgba(0,0,0,.45);
--sh-2:0 20px 48px rgba(0,0,0,.55);
--glow:0 16px 42px rgba(210,69,111,.28);

--r-s:.65rem;--r-m:1.1rem;--r-l:1.8rem;--r-xl:2.4rem;--r-pill:50px;

--f-display:"Archivo",system-ui,sans-serif;
--f-accent:"Source Serif 4",Georgia,serif;
--f-body:"Rethink Sans",system-ui,sans-serif;
--fw-md:500;--fw-sd:600;--fw-bd:700;

--fs-h1:clamp(2.6rem,6vw,4.7rem);
--fs-h2:clamp(2rem,4vw,3.1rem);
--fs-h3:clamp(1.35rem,2.4vw,1.75rem);
--fs-lead:clamp(1.06rem,1.4vw,1.22rem);
--fs-body:1rem;

--hh:76px;
--pad:clamp(3.5rem,7vw,6.5rem);
--wrap:1200px;
--tex-fundo:url("/assets/images/tex-fundo-sm.webp");

--g-iso:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8c4-3 16-3 20 0'/%3E%3Cpath d='M3 13c4-2.6 14-2.6 18 0'/%3E%3Cpath d='M5 18c3.5-2 10.5-2 14 0'/%3E%3C/svg%3E");
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 1rem);-webkit-text-size-adjust:100%}
body{background:var(--ink-0);color:var(--text);font-family:var(--f-body);font-weight:var(--fw-sd);font-size:var(--fs-body);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video,picture{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;cursor:pointer}
input,textarea,select{font:inherit;color:inherit;background:none}
ul,ol{list-style:none}
::selection{background:var(--rasp);color:var(--white)}
:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(210,69,111,.65)}
[hidden]{display:none!important}

h1,h2,h3,h4{font-family:var(--f-display);font-weight:var(--fw-bd);line-height:1.04;letter-spacing:-.015em;color:var(--text)}
p{color:var(--text-soft)}
strong{font-weight:var(--fw-sd);color:var(--text)}

.wrap{width:min(100% - 2.6rem,var(--wrap));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.section{padding-block:var(--pad);position:relative;overflow:clip}
.depth{background:var(--grad-hero)}
.surf-1{background:var(--ink-1)}
.surf-2{background:linear-gradient(180deg,var(--ink-2),var(--ink-1))}

.display{font-family:var(--f-display);font-weight:var(--fw-bd);font-size:var(--fs-h1);line-height:1.02;letter-spacing:-.022em}
.h2{font-size:var(--fs-h2)}
.h3{font-size:var(--fs-h3)}
.accent{font-family:var(--f-accent);font-style:italic;font-weight:var(--fw-bd);color:inherit;letter-spacing:0}
.lead{font-size:var(--fs-lead);color:var(--text-soft);font-weight:var(--fw-md);line-height:1.6}
.mut{color:var(--text-mut)}
.hi{color:var(--cream)}

.ic{display:inline-block;width:1.15em;height:1.15em;flex:none;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:fit-content;max-width:100%;padding:.92rem 1.65rem;border-radius:var(--r-pill);font-family:var(--f-body);font-weight:var(--fw-sd);font-size:1rem;line-height:1;color:var(--ink-text);background:linear-gradient(180deg,#FFFFFF,#F1E1D4);box-shadow:0 9px 24px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.75);transition:transform .2s ease,filter .2s ease,background .2s ease}
.btn:hover{transform:scale(.95);filter:brightness(1.04)}
.btn:active{transform:scale(.9)}
.btn .ic{width:1.05em;height:1.05em}
.btn--accent{color:var(--white);background:var(--grad-accent);box-shadow:0 10px 26px rgba(210,69,111,.42),inset 0 1px 0 rgba(255,255,255,.28)}
.btn--ghost{color:var(--cream);background:var(--glass-soft);box-shadow:inset 0 1px 0 rgba(244,214,190,.14);backdrop-filter:blur(6px)}
.btn--ghost:hover{transform:scale(.95);filter:brightness(1.08);background:rgba(244,214,190,.13)}
.btn--wide{width:100%}

.chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .95rem;border-radius:var(--r-pill);background:linear-gradient(rgba(22,10,16,.52),rgba(22,10,16,.52)),var(--tex-fundo) center/cover;color:var(--cream);font-weight:var(--fw-sd);font-size:1rem}
.chip::before{content:"";width:1.05rem;height:1.05rem;flex:none;background:var(--coral);-webkit-mask:var(--g-iso) center/contain no-repeat;mask:var(--g-iso) center/contain no-repeat}
.chip--bare::before{display:none}

.iso-list{display:grid;gap:.9rem}
.iso-list li{position:relative;padding-left:2rem;color:var(--text-soft);font-weight:var(--fw-md)}
.iso-list li::before{content:"";position:absolute;left:0;top:.2em;width:1.3rem;height:1.3rem;background:var(--rasp);-webkit-mask:var(--g-iso) center/contain no-repeat;mask:var(--g-iso) center/contain no-repeat}

.glass{background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--r-l);box-shadow:var(--sh-2)}
.card{background:linear-gradient(165deg,var(--ink-2),var(--ink-1));border-radius:var(--r-l);box-shadow:var(--sh-1);transition:transform .3s,box-shadow .3s}
.card:hover{transform:scale(1.012);box-shadow:var(--sh-2),var(--glow)}

.field{width:100%;padding:.95rem 1.1rem;border-radius:var(--r-m);background:var(--field);color:var(--text);font-weight:var(--fw-sd);box-shadow:inset 0 1px 0 rgba(244,214,190,.08);transition:box-shadow .2s,background .2s}
.field::placeholder{color:var(--text-mut);font-weight:var(--fw-md)}
.field:focus{outline:none;background:rgba(244,214,190,.09);box-shadow:inset 0 0 0 2px var(--rasp)}
textarea.field{min-height:8rem;resize:vertical}

.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.6rem;margin-bottom:clamp(1.8rem,3vw,3rem)}
.sec-head h2,.sec-head .h2{font-size:var(--fs-h2)}
.sec-head p{margin-top:.7rem;max-width:46ch}
.sec-head__link{display:inline-flex;align-items:center;gap:.45rem;color:var(--cream);font-weight:var(--fw-sd);white-space:nowrap;transition:color .2s,gap .2s}
.sec-head__link:hover{color:var(--rasp);gap:.72rem}

.depth-lines{position:absolute;inset:0;pointer-events:none;opacity:.55;background:repeating-radial-gradient(125% 95% at 85% -8%,transparent 0 37px,rgba(210,69,111,.055) 37px 39px)}
.grain{position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 50% at 78% 8%,rgba(210,69,111,.10),transparent 70%)}

@keyframes drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes glow-pulse{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes flow{to{stroke-dashoffset:-240}}
.float{animation:drift 7s ease-in-out infinite}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-in{opacity:1;transform:none}

@media (max-width:720px){
:root{--hh:64px}
.sec-head{flex-direction:column;align-items:flex-start;gap:.9rem}
.btn{width:100%}
.btn--auto{width:fit-content}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
