@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');
:root{--ink:#252525;--purple:#92c228;--pink:#707477;--cream:#fafafa;--mist:#edf0e9;--line:rgba(37,37,37,.16);--text:#4f5354}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:1rem}.header{height:88px;position:fixed;top:0;z-index:20;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid transparent;transition:.35s;background:rgba(247,245,238,.72);backdrop-filter:blur(12px)}.header.scrolled{height:66px;border-color:var(--line);background:rgba(247,245,238,.95)}.brand img{display:block;max-width:150px;max-height:46px;object-fit:contain}nav{display:flex;gap:1.3rem;font-size:.72rem;text-transform:uppercase;font-weight:800;letter-spacing:.06em}nav a{position:relative}nav a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--pink);transition:.25s}nav a:hover:after{width:100%}.button{display:inline-flex;align-items:center;gap:.8rem;background:var(--purple);color:#fff;padding:1rem 1.25rem;border:1px solid var(--purple);text-transform:uppercase;font-size:.73rem;font-weight:800;letter-spacing:.06em;transition:.25s;cursor:pointer}.button:hover{transform:translateY(-3px);box-shadow:5px 7px 0 var(--pink)}.button b{font-size:1.1rem}.button-small{font-size:.66rem;padding:.8rem 1rem}.section{padding:8rem 8vw}.hero{min-height:690px;padding-top:160px;display:grid;grid-template-columns:1.2fr .8fr;gap:4vw;align-items:center;overflow:hidden;background:radial-gradient(circle at 88% 43%,#d8cef9 0,transparent 26%),linear-gradient(115deg,#f7f5ee 35%,#f1eefa)}.eyebrow{font-family:"DM Mono",monospace;color:var(--purple);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:500;margin:0 0 1.25rem}.hero h1{font-size:clamp(2.8rem,5.2vw,5.3rem);letter-spacing:-.065em;line-height:.98;margin:.2rem 0 1.7rem;max-width:850px}.hero h1 em,h2 em{font-family:"Playfair Display",serif;font-weight:600;color:var(--purple)}.lead{max-width:650px;font-size:1.06rem;line-height:1.7;color:var(--text)}.actions{display:flex;align-items:center;gap:1.8rem;margin-top:2rem}.text-link{font-weight:800;text-transform:uppercase;font-size:.73rem;letter-spacing:.06em}.text-link span{color:var(--pink);font-size:1.3rem;margin-left:.4rem}.micro{font-size:.73rem;color:#6b6d7d;margin-top:1rem}.orbital{position:relative;width:min(34vw,420px);aspect-ratio:1;margin:auto;border:1px solid rgba(101,70,214,.24);border-radius:50%;animation:float 7s ease-in-out infinite}.orbital:before,.orbital:after{content:"";position:absolute;border:1px solid rgba(244,97,146,.25);inset:14%;border-radius:50%;transform:rotate(58deg)}.orbital:after{inset:28%;transform:rotate(-25deg)}.orbital-core{position:absolute;inset:32%;display:flex;flex-direction:column;justify-content:center;text-align:center;border-radius:50%;background:var(--ink);color:#fff;font-weight:800;font-size:1.3rem;line-height:.8;box-shadow:0 15px 30px rgba(8,10,32,.2)}.orbital-core span,.connection em{color:var(--pink);font-style:normal}.orbital-core small,.connection small{font-size:.42rem;letter-spacing:.18em;margin-top:.5rem}.satellite{position:absolute;font:500 .6rem "DM Mono";text-transform:uppercase;letter-spacing:.06em;background:#fff;padding:.6rem .8rem;box-shadow:0 7px 20px rgba(8,10,32,.08)}.satellite.a{left:-5%;top:16%}.satellite.b{right:-10%;top:57%}.satellite.c{left:20%;bottom:-5%}.pillars{background:var(--ink);color:#fff;padding:2.5rem 8vw;display:grid;grid-template-columns:1fr auto;gap:.5rem 3rem;align-items:center}.pillars p{font-size:1.25rem;font-weight:700;margin:0}.pillars div{display:flex;gap:1.5rem;font:500 .68rem "DM Mono";text-transform:uppercase;letter-spacing:.09em}.pillars div span:before{content:"✦";color:var(--pink);margin-right:.5rem}.pillars small{grid-column:1/-1;color:#aeb0c0}.section-intro{max-width:760px;margin-bottom:3.2rem}.section h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.04;letter-spacing:-.055em;margin:0}.section-intro>p:not(.eyebrow){color:var(--text);line-height:1.6}.challenge-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:2rem}.challenge-grid p{min-height:140px;margin:0;padding:1.4rem;font-weight:700;font-size:.9rem;line-height:1.45;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s}.challenge-grid p:hover{background:var(--purple);color:#fff}.button-outline{background:transparent;color:var(--purple)}.transform{background:var(--mist);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10vw}.transform-copy p:not(.eyebrow),.difference>div>p:not(.eyebrow),.unsure>p:not(.eyebrow),.about>p{line-height:1.75;color:var(--text);max-width:650px}.path{display:flex;flex-direction:column;align-items:flex-start}.path div{padding:1rem 1.4rem;background:#fff;font-weight:800;min-width:210px}.path div:nth-of-type(2){margin-left:15%}.path div:nth-of-type(3){margin-left:30%;background:var(--purple);color:white}.path div:nth-of-type(4){margin-left:45%}.path b{font:500 .65rem "DM Mono";color:var(--pink);margin-right:.6rem}.path i{margin:.3rem 0 .3rem 10%;font-style:normal;color:var(--purple)}.solutions{background:var(--ink);color:#fff}.solutions .eyebrow{color:#b8a6ff}.solutions .section-intro>p:not(.eyebrow){color:#c6c7d1}.solution{display:grid;grid-template-columns:60px 1fr 50px;gap:1rem;padding:2rem 0;border-top:1px solid #34354a;transition:.2s}.solution:hover{padding-left:1rem;background:linear-gradient(90deg,rgba(101,70,214,.22),transparent)}.solution>span{font:500 .7rem "DM Mono";color:var(--pink)}.solution h3{font-size:clamp(1.3rem,2.2vw,2.2rem);letter-spacing:-.04em;margin:0}.solution p{color:#c6c7d1;max-width:700px;line-height:1.65}.solution ul{display:flex;gap:1rem;list-style:none;padding:0;color:#b8a6ff;font-size:.75rem;flex-wrap:wrap}.solution li:before{content:"/ ";color:var(--pink)}.solution>a{width:42px;height:42px;border:1px solid #73748a;display:grid;place-items:center;font-size:1.5rem;transition:.2s}.solution>a:hover{background:var(--pink);border-color:var(--pink)}.difference{display:grid;grid-template-columns:1fr .7fr;gap:10vw;align-items:center}.checks{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.8rem;font-weight:700;font-size:.85rem}.checks li:before{content:"✓";color:var(--purple);margin-right:.6rem}.connection{position:relative;aspect-ratio:1;display:grid;place-items:center}.connection b{position:relative;z-index:2;background:var(--purple);color:#fff;width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.35rem}.connection>span{position:absolute;padding:.8rem;background:var(--cream);font:500 .7rem "DM Mono";text-transform:uppercase}.connection>span:first-child{left:0;top:22%}.connection>span:nth-child(3){right:0;bottom:22%}.connection i{position:absolute;width:70%;height:1px;background:var(--pink);transform:rotate(32deg)}.connection i:last-child{transform:rotate(-32deg);background:var(--purple)}.unsure{text-align:center;background:linear-gradient(125deg,#6f8e28,#a9d94a);color:#fff}.unsure .eyebrow{color:#fff}.unsure h2{max-width:850px;margin:auto}.unsure>p:not(.eyebrow){margin:1.5rem auto 2rem;color:#fff}.unsure .button{background:var(--ink);border-color:var(--ink)}.process ol{padding:0;display:grid;grid-template-columns:repeat(5,1fr);list-style:none;border-top:1px solid var(--line)}.process li{padding:1.5rem 1rem 0;border-right:1px solid var(--line);min-height:180px}.process li:first-child{padding-left:0}.process b{font:500 .7rem "DM Mono";color:var(--pink)}.process h3{margin:.9rem 0 .3rem;font-size:1.05rem}.process p{font-size:.8rem;color:#666777}.project-placeholder{border:1px dashed #9a99a9;padding:4rem 2rem;display:flex;justify-content:space-between;align-items:end;background:linear-gradient(135deg,transparent 49%,#eeeafc 50%,transparent 51%)}.project-placeholder span{font:700 clamp(3rem,8vw,8rem) "Playfair Display";color:var(--purple)}.project-placeholder p{max-width:240px;line-height:1.5}.about{background:#e6e1d2;display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}.faq{max-width:980px;margin:auto;padding-top:8rem;padding-bottom:8rem}.faq details{border-top:1px solid var(--line);padding:1.4rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:1.05rem;font-weight:800;list-style:none}.faq summary:after{content:"+";float:right;color:var(--purple);font-size:1.4rem}.faq p{color:var(--text);line-height:1.6;max-width:650px}.contact{padding:7rem 8vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--ink);color:#fff}.contact .eyebrow{color:#b8a6ff}.contact h2{font-size:clamp(2.2rem,4vw,4rem);letter-spacing:-.06em;line-height:1.04;margin:0}.contact>div>p:not(.eyebrow){color:#c6c7d1;line-height:1.65}.light{color:#fff;margin-top:2rem;display:inline-block}form{display:grid;gap:1rem}label{display:grid;gap:.45rem;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#c6c7d1}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #68697b;padding:.75rem 0;color:#fff;font:500 .95rem Manrope;outline:none}select option{color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--pink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-message{font-size:.85rem;color:#b8a6ff;margin:0}footer{padding:2.5rem 8vw;background:#050612;color:#bfc0cd;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:2rem;font-size:.78rem}footer .brand img{filter:brightness(0) invert(1);max-width:115px}footer p{max-width:400px}.whatsapp{position:fixed;right:1.2rem;bottom:1.2rem;z-index:18;background:#24c66a;color:#fff;padding:.85rem 1rem;border-radius:50px;display:flex;align-items:center;gap:.45rem;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.25)}.whatsapp:first-letter{font-size:1.3rem}.nav-toggle{display:none}@keyframes float{50%{transform:translateY(-10px) rotate(2deg)}}.reveal{animation:enter .7s both}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:850px){.header{padding:0 1.25rem;height:70px}.nav-cta{display:none}.nav-toggle{display:block;background:transparent;border:0;width:42px;height:42px}.nav-toggle span{display:block;width:23px;height:2px;background:var(--ink);margin:6px auto}.header nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--cream);padding:1.5rem;flex-direction:column;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.hero{grid-template-columns:1fr;padding:120px 7vw 70px;min-height:auto}.orbital{width:min(78vw,380px)}.pillars{grid-template-columns:1fr;padding:2rem 7vw}.pillars div{flex-wrap:wrap}.section{padding:5.5rem 7vw}.challenge-grid{grid-template-columns:1fr 1fr}.transform,.difference,.about,.contact{grid-template-columns:1fr}.transform{gap:3rem}.path div:nth-of-type(n){margin-left:0}.process ol{grid-template-columns:1fr 1fr}.process li{min-height:140px;border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr;gap:.7rem}.project-placeholder{display:block}.project-placeholder p{max-width:330px}.contact{padding:5rem 7vw}.whatsapp span{display:none}}@media(max-width:480px){.hero h1{font-size:2.75rem}.actions{align-items:flex-start;flex-direction:column;gap:1.1rem}.challenge-grid{grid-template-columns:1fr}.challenge-grid p{min-height:auto}.solution{grid-template-columns:35px 1fr}.solution>a{grid-column:2}.checks{grid-template-columns:1fr}.process ol{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.orbital{width:82vw}.connection>span{font-size:.55rem}.connection>span:first-child{left:-6%}.connection>span:nth-child(3){right:-7%}}@media(prefers-reduced-motion:reduce){*,html{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* ===== Identidade Albaluz — marca no header/footer ===== */
.header{height:104px}.header.scrolled{height:76px}
.header .brand{display:flex;align-items:center;gap:.7rem}
.header .brand img{width:60px!important;height:60px!important;max-width:none!important;max-height:none!important;transition:width .35s,height .35s}
.header .brand:after{content:"ALBALUZ\A CRIAÇÕES";white-space:pre;font:800 .7rem/1.05 Manrope,Arial,sans-serif;letter-spacing:.14em;color:var(--ink)}
.header.scrolled .brand img{width:44px!important;height:44px!important}
.header.scrolled .brand:after{font-size:.6rem}
footer{padding-top:3.5rem;padding-bottom:3.5rem}
footer .brand{display:flex;align-items:center;gap:.8rem}
footer .brand img{width:54px!important;height:54px!important;max-width:none!important;max-height:none!important;filter:none!important}
footer .brand:after{content:"ALBALUZ\A CRIAÇÕES";white-space:pre;font:800 .72rem/1.05 Manrope,Arial,sans-serif;letter-spacing:.15em;color:#fff}
@media(max-width:850px){.header{height:82px}.header.scrolled{height:68px}.header .brand img{width:48px!important;height:48px!important}.header .brand:after{font-size:.58rem}.header nav{top:82px}.header.scrolled nav{top:68px}}
@media(max-width:480px){.header .brand:after{display:none}}

/* ===== Hero — "a luz acesa" ===== */
.hero{position:relative;isolation:isolate;grid-template-columns:1.18fr .82fr;min-height:730px;padding-top:190px;background:radial-gradient(circle at 86% 30%,rgba(146,194,40,.14) 0,transparent 40%),linear-gradient(120deg,var(--cream) 45%,var(--mist))}
.hero:before{content:"";position:absolute;z-index:-1;right:-6vw;bottom:-14%;width:min(46vw,600px);height:min(46vw,600px);border-radius:50%;border:1px solid rgba(146,194,40,.22);box-shadow:0 0 0 34px rgba(146,194,40,.04),0 0 0 68px rgba(146,194,40,.02)}
.hero-copy{max-width:640px}
.hero h1{font-weight:800}
.hero h1 em{position:relative;font-style:italic}
.hero .lead{font-size:1.1rem;max-width:560px}
.hero-lamp{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.5rem;justify-self:center}
.lamp-frame{position:relative;width:min(27vw,340px);aspect-ratio:1;display:grid;place-items:end center;border-radius:50%;background:radial-gradient(circle at 38% 30%,#fff 0%,var(--mist) 72%);box-shadow:0 15px 45px rgba(37,37,37,.16),inset 0 0 0 1px rgba(37,37,37,.06);transition:background 1s ease,box-shadow 1s ease}
.lamp-frame.is-on{background:radial-gradient(circle at 38% 30%,#fff 0%,rgba(146,194,40,.4) 78%);box-shadow:0 0 0 20px rgba(146,194,40,.1),0 0 60px rgba(146,194,40,.4),0 15px 45px rgba(37,37,37,.18)}
.lamp-ring{position:absolute;border-radius:50%;pointer-events:none}
.lamp-ring.r1{inset:9%;border:1px solid rgba(146,194,40,.28)}
.lamp-ring.r2{inset:-5%;border:1px solid rgba(112,116,119,.22)}
.lamp-img{position:relative;z-index:2;width:66%;height:auto;padding-bottom:4%;filter:drop-shadow(0 16px 16px rgba(37,37,37,.2));transition:transform .5s ease}
.lamp-frame.is-on .lamp-img{transform:translateY(-6px)}
.lamp-switch{position:absolute;top:2%;right:14%;z-index:3;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:none;border:0;padding:0;cursor:pointer;font:600 .6rem "DM Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}
.switch-cord{position:relative;width:2px;height:52px;background:var(--pink);opacity:.6;transition:height .3s ease}
.switch-knob{position:absolute;left:50%;bottom:-6px;width:14px;height:14px;border-radius:50%;background:var(--purple);transform:translateX(-50%);box-shadow:0 4px 10px rgba(37,37,37,.28);transition:transform .2s ease}
.lamp-switch:hover .switch-cord,.lamp-switch:focus-visible .switch-cord{height:62px}
.lamp-switch.pulled .switch-cord{height:38px}
.lamp-switch.pulled .switch-knob{transform:translateX(-50%) scale(.85)}
.switch-label{background:var(--ink);color:#fff;padding:.32rem .6rem;border-radius:2px;white-space:nowrap;box-shadow:3px 3px 0 var(--purple)}
.lamp-caption{font:500 .85rem/1.55 Manrope,Arial,sans-serif;color:var(--text);max-width:280px;text-align:center;min-height:2.6em}
.lamp-caption a{color:var(--purple);font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:850px){.hero{grid-template-columns:1fr;min-height:auto;padding:130px 7vw 4rem}.hero:before{right:auto;left:50%;transform:translateX(-50%);bottom:-10%;width:90vw;height:90vw}.hero-lamp{margin-top:1rem}.lamp-frame{width:min(64vw,300px)}}
@media(max-width:480px){.lamp-frame{width:78vw}.lamp-switch{right:10%}}

/* ===== Diferencial — mascote no diagrama de conexão ===== */
.green-word{color:var(--purple);position:relative;white-space:nowrap}
.green-word:after{content:"";position:absolute;left:0;right:0;bottom:-.08em;height:.08em;background:var(--purple);opacity:.45}
.connection{overflow:visible}
.connection-mascot{position:absolute;z-index:4;width:36%;right:-8%;bottom:-6%;filter:drop-shadow(0 14px 12px rgba(37,37,37,.18));animation:mascot-float 5s ease-in-out infinite;pointer-events:none}
@keyframes mascot-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-1.5deg)}}
@media(max-width:850px){.connection-mascot{width:30%;right:-4%;bottom:-3%}}
@media(max-width:480px){.connection-mascot{display:none}}

/* ===== Sobre — imagem de apoio ===== */
.about-copy>p{line-height:1.75;color:var(--text);max-width:560px}
.about-copy img{display:block;width:100%;max-width:480px;height:auto;margin-top:1.9rem;border-radius:8px;box-shadow:0 22px 44px rgba(37,37,37,.14)}

/* ===== Footer — redes sociais ===== */
.footer-social{display:flex;gap:.7rem}
.footer-social a{width:38px;height:38px;border:1px solid #3a3b4a;border-radius:50%;display:grid;place-items:center;font:700 .68rem "DM Mono",monospace;letter-spacing:.02em;color:#bfc0cd;transition:.2s}
.footer-social a:hover{background:var(--purple);border-color:var(--purple);color:var(--ink)}
@media(max-width:850px){footer{grid-template-columns:1fr}.footer-social{order:2}}

/* ===== Acessibilidade — foco visível ===== */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
