/* Visual layer only. The original application, wording and image sources remain unchanged. */
:root{--fc-red:#cb0903;--fc-red-dark:#8f100b;--fc-ink:#262824;--fc-muted:#686d65;--fc-paper:#f6f6f2;--fc-line:#dfe1d8;--fc-soft:#f4e4df;--fc-shadow:0 20px 55px #2529230b;font-family:Ubuntu,Arial,sans-serif;color:var(--fc-ink);background:var(--fc-paper);scroll-padding-top:100px;scroll-behavior:smooth;color-scheme:light}
body{font-family:Ubuntu,Arial,sans-serif;background:var(--fc-paper);overflow-x:clip;-webkit-font-smoothing:antialiased}
button,input,select,textarea,.font-display,.font-sans{font-family:Ubuntu,Arial,sans-serif}
h1,h2,h3{font-family:Ubuntu,Arial,sans-serif;letter-spacing:-.035em}
h2{font-weight:500}h3{letter-spacing:-.025em}
a,button,input,select,textarea{ -webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e67d6c;outline-offset:5px}

/* Remap the retained application's palette without changing its generated class names. */
[class~="text-[#6B0072]"]{color:var(--fc-red)}
[class~="text-[#C71585]"]{color:var(--fc-red)}
[class~="text-[#F8A8D8]"]{color:#f3b9ab}
[class~="bg-[#6B0072]"]{background-color:var(--fc-red)}
[class~="bg-[#C71585]"]{background-color:var(--fc-red)}
[class~="bg-[#3D0042]"]{background-color:#262c27}
[class~="bg-[#6B0072]/95"]{background-color:#b01009f5}
[class~="bg-[#6B0072]/10"]{background-color:#cb09030d}
[class~="bg-[#F8FAFC]"]{background-color:var(--fc-paper)}
[class~="bg-[#F8A8D8]/60"]{background-color:#e9afa1}
[class~="border-[#6B0072]/10"],[class~="border-[#6B0072]/20"]{border-color:var(--fc-line)}
[class~="border-[#C71585]"],[class~="border-[#F8A8D8]"]{border-color:#db8173}
[class~="border-[#C71585]/20"],[class~="border-[#C71585]/30"],[class~="border-[#C71585]/40"]{border-color:#d89b8c66}
[class~="divide-[#6B0072]/10"]>:not([hidden])~:not([hidden]){border-color:var(--fc-line)}
[class~="from-[#6B0072]/5"]{--tw-gradient-from:#cb090308;--tw-gradient-to:#cb090300}
[class~="to-[#C71585]/5"]{--tw-gradient-to:#cb09030b}
[class~="hover:bg-[#E91E8C]"]:hover,[class~="hover:bg-[#8B0090]"]:hover,[class~="hover:bg-[#6B0072]"]:hover,[class~="hover:bg-[#C71585]"]:hover{background-color:var(--fc-red-dark)}
[class~="hover:text-[#C71585]"]:hover{color:var(--fc-red-dark)}
[class~="hover:text-[#F8A8D8]"]:hover{color:#ffd7cd}
[class~="hover:border-[#C71585]"]:hover,[class~="focus:border-[#C71585]"]:focus{border-color:#d45d4d}

/* Clear, compact header and retained responsive menu. */
#root>div>header{position:sticky;inset:auto;top:0;background:var(--fc-red);border-bottom:1px solid #ffffff1c;box-shadow:0 2px 18px #4b090908;z-index:40}
#root>div>header>div:first-child{max-width:1280px;min-height:84px;padding:12px 38px}
#root>div>header img{width:54px;height:54px;background:#fff;padding:3px;border-radius:50%}
#root>div>header nav{gap:25px}
#root>div>header nav>a:not([target]){font-size:12px;color:#fffdf8db;letter-spacing:.01em}
#root>div>header nav>a[target]{border:1px solid #ffffff55;border-radius:7px;background:#ffffff0c;font-size:11px;padding-inline:19px}
#root>div>header nav>a[target]:hover{background:#ffffff20}
#root>div>header>div:first-child>a>span>span:first-child{font-weight:500;font-size:20px;letter-spacing:.025em}
#root>div>header>div:first-child>a>span>span:last-child{font-size:8px;letter-spacing:.17em;color:#fff9}
#root>div>header>div:nth-child(2){border-radius:12px;margin-bottom:16px;background:var(--fc-red-dark);border-color:#ffffff25}
#root>div>header button{border-radius:7px}

/* Editorial hero: lighter canvas, red emphasis, original image framed on the right. */
#top{min-height:790px;background:var(--fc-paper);isolation:isolate;overflow:hidden}
#top>img{inset:38px 3.8vw 38px auto;width:43%;height:calc(100% - 76px);object-fit:cover;object-position:63% center;border-radius:170px 18px 18px 18px;box-shadow:var(--fc-shadow)}
#top>div:nth-of-type(1){background:linear-gradient(90deg,var(--fc-paper) 0%,var(--fc-paper) 48%,#f6f6f280 59%,transparent 74%);z-index:1;pointer-events:none}
#top>div:nth-of-type(2){display:none}
#top>div:last-child{max-width:1280px;padding:62px 38px 67px;position:relative;z-index:2}
#top>div:last-child>div{max-width:56%}
#top h1{color:var(--fc-ink);font-size:clamp(39px,3.8vw,58px);line-height:1.13;font-weight:500;letter-spacing:-.04em}
#top h1>span{color:var(--fc-red);white-space:normal}
#top h1 svg{color:var(--fc-red);opacity:.55;height:8px;bottom:-5px}
#top>div:last-child>div>p:first-child{border-radius:30px;border-color:#cb090322;color:var(--fc-red);font-size:9px;letter-spacing:.19em;background:#fff9;padding:9px 15px;margin-bottom:23px}
#top>div:last-child>div>p:not(:first-child){color:#62695c;font-size:16px;line-height:1.75;max-width:530px;margin-top:26px}
#top>div:last-child>div>div:nth-last-child(2){margin-top:28px;gap:12px}
#top a{border-radius:7px;font-size:10px;letter-spacing:.08em;min-height:50px;padding-inline:23px}
#top a:first-child{background:var(--fc-red);box-shadow:0 7px 20px #cb090310}
#top a:first-child:hover{background:var(--fc-red-dark)}
#top a:nth-child(2){border-color:#c6cbc0;color:var(--fc-ink);background:#fff8}
#top a:nth-child(2):hover{border-color:var(--fc-red);color:var(--fc-red)}
#top>div:last-child>div>div:last-child{margin-top:36px;padding-top:25px;border-color:#d7dbcf;gap:22px;max-width:550px}
#top>div:last-child>div>div:last-child>div>p:first-child{font-size:29px;font-weight:500;color:var(--fc-red);letter-spacing:-.04em}
#top>div:last-child>div>div:last-child>div>p:last-child{font-size:9px;letter-spacing:.1em;color:#737b68;line-height:1.65}

/* Moving topic strip retained, with subdued editorial contrast. */
#top+div{background:#eceee6;border-color:#dce0d2;padding-block:14px}
#top+div .jfm-marquee>span{color:#68735c;font-size:9px;letter-spacing:.16em;gap:32px}
#top+div .jfm-marquee>span>span{background:var(--fc-red);width:4px;height:4px}

/* About: original photograph and complete copy, with a softer frame. */
#sobre{background:#fff;padding-block:90px}
#sobre>div{max-width:1200px;gap:75px}
#sobre img{border-radius:135px 16px 16px 16px;box-shadow:var(--fc-shadow)}
#sobre>div>div:first-child>div>div:first-child{border-color:#d7ac9f;border-radius:28px 0 0 0}
#sobre>div>div:first-child>div>div:last-child{background:var(--fc-red);border-radius:10px;box-shadow:0 14px 40px #251a1714}
#sobre h2,#solucoes h2,#servicos h2,#contato h2{color:var(--fc-ink);font-weight:500;line-height:1.16;letter-spacing:-.04em;font-size:clamp(31px,3.3vw,45px)}
#sobre [class~="space-y-5"]{font-size:15px;color:#656c5e;line-height:1.85}
#sobre [class~="space-y-5"] p+p{margin-top:18px}
#sobre [class~="mt-9"] span{font-size:12px;color:#444e3c}
#sobre [class~="mt-9"] svg{color:var(--fc-red)}

/* Main solutions: large image-led cards, generous rhythm. */
#solucoes{background:#f0f1eb;padding-block:85px}
#solucoes>div,#servicos>div{max-width:1200px}
#solucoes>div>div:last-child{margin-top:45px}
#solucoes article{border:1px solid #e0e4d7;border-radius:18px;box-shadow:0 8px 35px #27302304}
#solucoes article figure>span{background:var(--fc-red);color:#fff;border-bottom-right-radius:12px;font-size:12px;padding:13px 18px}
#solucoes article figure img{min-height:100%;transition:transform .7s ease}
#solucoes article:hover figure img{transform:scale(1.025)}
#solucoes article>div{padding:38px 40px}
#solucoes article h3{color:var(--fc-ink);font-size:26px;font-weight:500;margin-top:18px}
#solucoes article p{font-size:14px;color:#687060;line-height:1.8}
#solucoes article ul{margin-top:23px;border-color:var(--fc-line)}
#solucoes article li{color:#505a46;border-color:var(--fc-line);font-size:12px}
#solucoes article a{background:#f8ece7;color:var(--fc-red);border-radius:6px;padding:11px 16px;margin-top:24px;font-size:10px;letter-spacing:.08em}
#solucoes article a:hover{background:#eed4cb}

/* Service tiles: easier scanning, original icons and wording retained. */
#servicos{padding-block:85px;background:#fff}
#servicos>div>div:nth-child(2){margin-top:42px;gap:18px}
#servicos>div>div:nth-child(2)>div>div{border:1px solid #e4e6dc;border-radius:14px;background:#f7f8f4;padding:27px;transition:transform .2s,box-shadow .2s}
#servicos>div>div:nth-child(2)>div>div:hover{transform:translateY(-3px);box-shadow:var(--fc-shadow)}
#servicos h3{color:var(--fc-ink);font-weight:500;font-size:18px;line-height:1.4}
#servicos h3+p{color:#68705f;line-height:1.8;font-size:13px}
#servicos [class~="h-11"]{border-radius:10px;background:#cb09030b;color:var(--fc-red)}
#servicos [class~="h-11"] svg{color:var(--fc-red)}
#servicos>div>div:last-child>div{border:1px solid #e7d6cf;border-radius:14px;background:linear-gradient(120deg,#f8eee9,#f9f8f2);padding:31px}
#servicos>div>div:last-child a{border-radius:6px;font-size:10px;letter-spacing:.08em;min-height:46px}

/* Differentiators follow the e-book's deeper red chapter rhythm. */
#diferenciais{background:linear-gradient(120deg,#c90b04,#95130b);padding-block:85px}
#diferenciais>div{max-width:1200px}
#diferenciais h2{font-size:clamp(32px,3.3vw,44px);font-weight:500;line-height:1.18;max-width:610px}
#diferenciais>div>div:first-child a{border-radius:7px;border-color:#ffffff5e;color:#fff;font-size:10px;letter-spacing:.08em}
#diferenciais>div>div:last-child{margin-top:45px;gap:18px;background:transparent}
#diferenciais>div>div:last-child>div>div{background:#ffffff09;border:1px solid #ffffff28;border-radius:13px;padding:29px;height:100%}
#diferenciais h3{color:#fff;font-size:21px;font-weight:500;line-height:1.35}
#diferenciais h3+p{font-size:13px;line-height:1.85;color:#f9e5dcce}
#diferenciais svg{color:#f0b5a5}

/* Contact panel and controls: softer surfaces, clear actions. */
#contato{background:var(--fc-paper);padding-block:85px}
#contato>div{max-width:1200px;gap:75px}
#contato>div>div:first-child>div:first-child>p:last-child{font-size:14px;color:#66705b;line-height:1.85}
#contato form{background:#fff;border:1px solid #e0e4d6;border-radius:18px;padding:37px;box-shadow:var(--fc-shadow)}
#contato form h3{color:var(--fc-ink);font-size:27px;font-weight:500}
#contato form h3+p{font-size:12px;color:#79816d}
#contato label{font-size:12px;color:#4e5941;font-weight:400}
#contato input,#contato select{border:1px solid #dce1d2;border-radius:7px;background:#fbfcf8;color:var(--fc-ink);font-size:14px;min-height:48px}
#contato input:focus,#contato select:focus{border-color:#cf6a56;outline:2px solid #eab5a447;outline-offset:0}
#contato input::placeholder{color:#929a86}
#contato form button{background:var(--fc-red);border-radius:7px;font-size:10px;letter-spacing:.09em}
#contato form>a{border:1px solid #d7ddcc;background:#fff;color:#4d6240;border-radius:7px;font-size:10px;letter-spacing:.07em}
#contato form>a:hover{background:#eef2e8}
#contato [class~="divide-y"]>div>div>p:first-child{color:#848e77;font-size:9px}
#contato [class~="divide-y"]>div>div>p:last-child{color:#47533c;font-size:13px;overflow-wrap:anywhere}

/* Footer uses the same charcoal tone as the current personal site. */
#root footer{background:#272c28;color:#bfc5b8;padding-block:47px}
#root footer>div{max-width:1200px}
#root footer img{background:#fff;padding:3px;border-radius:50%}
#root footer [class~="font-display"]{font-size:19px;line-height:1.4}
#root footer a,#root footer span{font-size:12px}
#root footer [class~="text-[#F8A8D8]"]{color:#e5b1a1}
#root footer>div>p:last-child{font-size:10px;color:#8f9b83;line-height:1.7}

@media(min-width:1600px){#top>img{right:max(4vw,calc((100vw - 1360px)/2));width:570px}#top>div:nth-of-type(1){background:linear-gradient(90deg,var(--fc-paper) 0%,var(--fc-paper) 45%,#f6f6f260 61%,transparent 72%)}}
@media(max-width:1100px){#root>div>header nav{gap:17px}#root>div>header>div:first-child{padding-inline:25px}#top h1{font-size:43px}#top>div:last-child>div{max-width:59%}#top>img{width:44%;right:24px}#sobre>div,#contato>div{gap:45px}#solucoes article>div{padding:31px}}
@media(max-width:1023px){#top{min-height:760px}#top>img{width:100%;inset:0;height:100%;border-radius:0;opacity:.18;object-position:center}#top>div:nth-of-type(1){background:linear-gradient(90deg,#f6f6f2fb 0%,#f6f6f2de 50%,#f6f6f27d 100%)}#top>div:last-child{padding:65px 30px}#top>div:last-child>div{max-width:720px}#top h1{font-size:49px;max-width:710px}#sobre>div{gap:55px}#sobre>div>div:first-child{max-width:450px;justify-self:center}#root>div>header>div:first-child{min-height:78px;padding:11px 25px}#sobre,#solucoes,#servicos,#diferenciais,#contato{padding-block:65px}#contato>div{gap:40px}#contato form{max-width:680px;width:100%}}
@media(max-width:640px){:root{scroll-padding-top:88px}#root>div>header>div:first-child{min-height:74px;padding:10px 20px}#root>div>header img{width:46px;height:46px}#root>div>header>div:first-child>a>span>span:first-child{font-size:17px}#root>div>header>div:first-child>a>span>span:last-child{font-size:7px;letter-spacing:.13em}#top{min-height:0}#top>div:last-child{padding:49px 23px 53px}#top>div:last-child>div{max-width:100%}#top h1{font-size:38px;line-height:1.17;letter-spacing:-.04em}#top>div:last-child>div>p:first-child{font-size:8px;letter-spacing:.14em;padding:9px 12px;gap:9px}#top>div:last-child>div>p:not(:first-child){font-size:14px;margin-top:23px;line-height:1.8}#top a{min-height:48px;font-size:10px}#top>div:last-child>div>div:last-child{gap:13px;margin-top:29px;padding-top:24px}#top>div:last-child>div>div:last-child>div>p:first-child{font-size:25px}#top>div:last-child>div>div:last-child>div>p:last-child{font-size:8px;letter-spacing:.055em}#top+div .jfm-marquee>span{font-size:8px}#sobre,#solucoes,#servicos,#diferenciais,#contato{padding-block:49px}#sobre>div,#solucoes>div,#servicos>div,#diferenciais>div,#contato>div{padding-inline:23px}#sobre>div>div:first-child{max-width:330px;width:91%}#sobre img{border-top-left-radius:100px}#sobre h2,#solucoes h2,#servicos h2,#contato h2,#diferenciais h2{font-size:32px;line-height:1.19}#sobre [class~="space-y-5"]{font-size:14px}#sobre [class~="mt-9"]{gap:14px;margin-top:25px}#sobre [class~="mt-9"] span{font-size:11px}#solucoes>div>div:last-child,#servicos>div>div:nth-child(2),#diferenciais>div>div:last-child{margin-top:30px}#solucoes article figure{min-height:225px}#solucoes article>div{padding:26px}#solucoes article h3{font-size:25px}#solucoes article p{font-size:13px}#servicos>div>div:nth-child(2)>div>div{padding:24px}#servicos>div>div:last-child>div{padding:25px}#servicos h2+p{font-size:15px;line-height:1.8}#diferenciais>div>div:last-child>div>div{padding:26px}#contato form{padding:27px 23px}#contato input,#contato select{font-size:16px}#contato [class~="divide-y"]>div>div>p:last-child{font-size:12px}#root footer{padding-block:37px}#root footer>div{padding-inline:23px}#root footer [class~="font-display"]{font-size:17px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.jfm-marquee{animation:none}#solucoes article figure img,#servicos>div>div:nth-child(2)>div>div{transition:none}}
