:root{--ink:#163e49;--deep:#0e3039;--coral:#e85d4a;--yellow:#f1bd4b;--cream:#f7f4ed;--paper:#fffdfa;--muted:#66757a;--line:rgba(22,62,73,.15);--radius:22px;--shadow:0 24px 70px rgba(14,48,57,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%}.skip-link{position:fixed;left:1rem;top:-100px;z-index:1000;background:#fff;padding:.8rem 1rem;border-radius:8px}.skip-link:focus{top:1rem}.site-header{height:84px;background:rgba(255,253,250,.94);backdrop-filter:blur(15px);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;height:100%;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand strong{font:800 1.25rem/1 "Manrope",sans-serif;letter-spacing:.12em;display:block}.brand small{font-size:.66rem;letter-spacing:.05em;color:var(--muted)}.brand-mark{width:38px;height:38px;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;transform:skew(-8deg)}.brand-mark i{display:block;border-radius:8px 8px 3px 3px}.brand-mark i:nth-child(1){height:22px;background:var(--coral)}.brand-mark i:nth-child(2){height:34px;background:var(--yellow)}.brand-mark i:nth-child(3){height:27px;background:#4ca7a0}nav{display:flex;align-items:center;gap:30px;font-weight:600;font-size:.92rem}nav a:not(.nav-cta){position:relative}nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--coral);transition:.25s}nav a:hover:after,nav a:focus:after{right:0}.nav-cta{background:var(--ink);color:white;padding:11px 19px;border-radius:999px}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span{display:block;width:25px;height:2px;background:var(--ink);margin:5px}.hero{min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden;background:var(--deep)}.hero-art{position:absolute;inset:0;background-image:url('hero.jpg');background-size:cover;background-position:center}.hero-art:empty{background-color:#2e666c}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,41,49,.95) 0%,rgba(9,41,49,.77) 47%,rgba(9,41,49,.18) 80%),linear-gradient(0deg,rgba(9,41,49,.55),transparent 42%)}.hero-content{position:relative;z-index:1;max-width:1240px;width:100%;margin:auto;padding:92px 28px 150px;color:white}.eyebrow,.tag{text-transform:uppercase;font-size:.76rem;letter-spacing:.14em;font-weight:700}.eyebrow{display:flex;align-items:center;gap:12px;color:#f8d47d}.eyebrow:before{content:"";width:34px;height:2px;background:var(--yellow)}h1,h2,h3{font-family:"Manrope",sans-serif;line-height:1.12;letter-spacing:-.035em;margin-top:0}h1{font-size:clamp(3rem,6vw,5.6rem);max-width:950px;margin:22px 0 26px}h1 em{font-style:normal;color:#f5ca66}.hero-copy{font-size:1.15rem;max-width:650px;color:rgba(255,255,255,.84);line-height:1.7}.hero-actions{display:flex;gap:13px;margin-top:36px;flex-wrap:wrap}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 24px;border-radius:999px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--coral);color:white}.button-ghost{color:white;border:1px solid rgba(255,255,255,.52)}.hero-note{position:absolute;z-index:2;right:0;bottom:0;width:min(520px,44vw);padding:24px 40px;background:var(--paper);display:flex;flex-direction:column}.hero-note span{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.hero-note strong{font:700 1.05rem "Manrope",sans-serif;margin-top:3px}.intro,.resources{padding:120px max(28px,calc((100vw - 1184px)/2))}.section-label{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:12px;margin-bottom:36px}.section-label span{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:.68rem}.section-label.light{color:#b8d0d2}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:start}.intro h2,.section-heading h2,.process h2,.contact h2{font-size:clamp(2.2rem,4.3vw,4rem)}.intro-copy{font-size:1.08rem;color:#405b62}.intro-copy p:first-child{margin-top:0}.text-link{font-weight:700;color:var(--coral);display:inline-flex;gap:12px;margin-top:15px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:84px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.principles article{background:var(--paper);padding:36px 34px}.principles article>span{font:700 .78rem "Manrope";color:var(--coral)}.principles h3{font-size:1.45rem;margin:24px 0 10px}.principles p{margin:0;color:var(--muted)}.services{background:var(--ink);color:white;padding:120px max(28px,calc((100vw - 1184px)/2))}.section-heading{display:grid;grid-template-columns:1fr 2.4fr 1fr;gap:35px;align-items:end;margin-bottom:60px}.section-heading .section-label{align-self:start}.section-heading h2{margin:0}.section-heading>p{color:#bdd0d3;margin:0}.service-list{border-top:1px solid rgba(255,255,255,.16)}.service-card{display:grid;grid-template-columns:90px minmax(0,1fr) 180px;gap:35px;padding:40px 24px;border-bottom:1px solid rgba(255,255,255,.16);align-items:center;transition:.25s}.service-card:hover{background:rgba(255,255,255,.045)}.service-number{font:700 1rem "Manrope";color:#8eb0b5}.service-card .tag{color:#f5ca66;margin:0 0 8px}.service-card h3{font-size:1.65rem;margin:0 0 12px}.service-card p:last-child{color:#bfd0d3;max-width:700px;margin:0}.service-card>a{font-weight:700;font-size:.9rem;display:flex;justify-content:space-between;gap:10px}.service-card>a span{color:var(--yellow);font-size:1.3rem}.process{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:var(--cream)}.process-image{background:url('materials.jpg') center/cover,#d9ded7}.process-panel{padding:100px clamp(36px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.process ol{list-style:none;margin:36px 0 0;padding:0}.process li{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.process li>span{width:38px;height:38px;border-radius:50%;background:var(--coral);color:white;display:grid;place-items:center;font-weight:700}.process li strong{font:700 1.1rem "Manrope",sans-serif}.process li p{margin:4px 0 0;color:var(--muted)}.section-heading.dark-text>p{color:var(--muted)}.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.resource-grid article{border:1px solid var(--line);padding:14px 14px 24px;border-radius:var(--radius);background:white}.resource-visual{aspect-ratio:1/1;border-radius:14px;position:relative;overflow:hidden;display:grid;place-items:center;font:800 clamp(1.5rem,2.3vw,2.4rem) "Manrope",sans-serif}.resource-visual:after{content:"";width:54%;height:54%;border:2px solid currentColor;border-radius:50%;position:absolute;opacity:.22}.resource-visual i,.resource-visual b{position:absolute;font-style:normal;font-size:1.7rem}.resource-visual i{left:18%;top:14%}.resource-visual b{right:16%;bottom:12%}.coral{background:#f6d2ca;color:#9b3528}.teal{background:#b9deda;color:#1c6e68}.yellow{background:#f8e2a8;color:#805f12}.navy{background:#cadae0;color:#173f4b}.resource-grid .tag{color:var(--coral);margin:20px 8px 8px}.resource-grid h3{font-size:1.25rem;margin:0 8px 9px}.resource-grid article>p:not(.tag){color:var(--muted);margin:0 8px 16px;font-size:.92rem}.resource-grid article>strong{margin:0 8px;font:700 1rem "Manrope"}.resource-footer{margin-top:42px;border-top:1px solid var(--line);padding-top:30px;display:flex;justify-content:space-between;align-items:center;gap:22px}.resource-footer p{font-size:1.1rem}.button-dark{background:var(--ink);color:white}.manifesto{background:var(--yellow);padding:110px max(28px,calc((100vw - 1000px)/2));text-align:center}.quote-mark{font:800 6rem/1 Georgia,serif;margin:0}.manifesto blockquote{font:700 clamp(2rem,4vw,3.5rem)/1.22 "Manrope",sans-serif;letter-spacing:-.035em;margin:0}.manifesto>p:last-child{margin:30px 0 0;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:700}.contact{background:var(--deep);color:white;padding:110px max(28px,calc((100vw - 1184px)/2));display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact>div:first-child>p{color:#bed0d3;max-width:550px}.contact-options{border-top:1px solid rgba(255,255,255,.2)}.contact-options>a,.contact-options>div{min-height:96px;border-bottom:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:110px 1fr 28px;align-items:center;gap:18px}.contact-options>div{grid-template-columns:110px 1fr}.contact-options span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#91aeb3}.contact-options strong{font:600 1.05rem "Manrope",sans-serif;word-break:break-word}.contact-options i{font-style:normal;color:var(--yellow);font-size:1.4rem}footer{background:#09272f;color:white;padding:55px max(28px,calc((100vw - 1184px)/2)) 30px;display:grid;grid-template-columns:1.2fr 1fr .6fr;gap:40px;align-items:start}.footer-brand small{color:#99b2b7}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.9rem}.footer-social{text-align:right;font-size:.9rem}footer>p{grid-column:1/-1;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);color:#91aeb3;font-size:.8rem;margin:0}
@media(max-width:900px){.site-header{height:72px}.header-inner{padding:0 20px}.brand small{display:none}.menu-button{display:block;position:relative;z-index:2}nav{position:fixed;inset:72px 0 auto;background:var(--paper);padding:28px;display:none;flex-direction:column;align-items:stretch;gap:20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}nav.open{display:flex}.hero{min-height:680px}.hero-content{padding-top:70px}.hero-note{width:auto;left:22px;right:22px;padding:20px 24px}.intro-grid,.contact{grid-template-columns:1fr;gap:42px}.principles{grid-template-columns:1fr}.section-heading{grid-template-columns:1fr;gap:18px}.service-card{grid-template-columns:52px 1fr}.service-card>a{grid-column:2}.process{grid-template-columns:1fr}.process-image{min-height:460px}.resource-grid{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}.footer-social{text-align:left}}
@media(max-width:600px){body{font-size:16px}.hero{min-height:720px}.hero-overlay{background:linear-gradient(90deg,rgba(9,41,49,.96),rgba(9,41,49,.58)),linear-gradient(0deg,rgba(9,41,49,.65),transparent)}h1{font-size:2.7rem}.hero-content{padding:55px 20px 150px}.hero-copy{font-size:1.02rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-note{left:0;right:0}.intro,.services,.resources{padding:82px 20px}.intro h2,.section-heading h2,.process h2,.contact h2{font-size:2.25rem}.principles{margin-top:55px}.service-card{grid-template-columns:1fr;padding:30px 6px}.service-card>a{grid-column:1}.process-image{min-height:340px}.process-panel{padding:75px 20px}.resource-grid{grid-template-columns:1fr}.resource-footer{align-items:stretch;flex-direction:column}.contact{padding:82px 20px}.contact-options>a,.contact-options>div{grid-template-columns:1fr 28px;gap:4px;padding:20px 0}.contact-options>div{grid-template-columns:1fr}.contact-options span{grid-column:1}.contact-options strong{grid-column:1}.contact-options i{grid-column:2;grid-row:1/3}.manifesto{padding:80px 20px}footer{grid-template-columns:1fr}.footer-social{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-art{background-image:url('hero.jpg')}
.process-image{background-image:url('materials.jpg')}

/* Identidade Luduke e perfil profissional */
:root{--coral:#7f971f;--yellow:#e6b601;--cream:#f5f6f0}
.official-brand{min-width:128px;height:72px;justify-content:flex-start;overflow:hidden}
.official-brand img{display:block;width:auto;height:68px;object-fit:contain}
.footer-brand{height:auto;overflow:visible;background:transparent;width:max-content;max-width:100%;padding:0;border-radius:0}
.footer-brand img{height:76px;max-width:190px;-webkit-clip-path:ellipse(49% 49% at 50% 50%);clip-path:ellipse(49% 49% at 50% 50%)}
.luciana{display:grid;grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr);background:#eef1e7;min-height:780px}
.luciana-photo{min-height:720px;overflow:hidden;background:#d8ddcf}
.luciana-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 24%}
.luciana-content{padding:92px clamp(38px,7vw,110px);display:flex;flex-direction:column;justify-content:center}
.luciana-content h2{font-size:clamp(2.7rem,5vw,4.8rem);margin-bottom:20px}
.eyebrow-profile{margin:0 0 14px;color:var(--coral);font-size:.76rem;line-height:1.4;text-transform:uppercase;letter-spacing:.14em;font-weight:700}
.luciana-lead{font-size:1.15rem;line-height:1.7;color:#35555d;margin:0 0 30px}
.credentials{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:25px}
.credentials div{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.credentials strong{font:700 .96rem "Manrope",sans-serif;color:var(--ink)}
.credentials span{font-size:.84rem;line-height:1.5;color:var(--muted)}
.luciana-content>p:last-of-type{color:var(--muted)}
.profile-button{align-self:flex-start;margin-top:16px}
.footer-social{display:flex;flex-direction:column;gap:8px}
@media(max-width:900px){.official-brand{height:62px}.official-brand img{height:58px}.luciana{grid-template-columns:1fr}.luciana-photo{min-height:600px;max-height:760px}.luciana-content{padding:82px 28px}}
@media(max-width:600px){.official-brand{height:58px;min-width:104px}.official-brand img{height:54px}.luciana-photo{min-height:460px}.luciana-content{padding:70px 20px}.credentials{grid-template-columns:1fr}.luciana-content h2{font-size:2.6rem}.footer-brand img{height:65px}}
.eyebrow,h1 em,.service-card .tag,.service-card>a span,.contact-options i{color:var(--yellow)}
.manifesto,.resource-visual.yellow{background:var(--yellow)}
.resource-visual.yellow{color:var(--deep)}

/* Compatibilidade entre navegadores, ecrãs e interação por toque */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden;font-family:"DM Sans",Arial,sans-serif}
img{height:auto}
.site-header{-webkit-backdrop-filter:blur(15px);position:-webkit-sticky}
.menu-button{min-width:44px;min-height:44px;padding:10px;touch-action:manipulation}
.button{touch-action:manipulation}
.hero{min-height:calc(100svh - 84px)}
.contact-options strong{overflow-wrap:anywhere}
:focus-visible{outline:3px solid #e6b601;outline-offset:4px}
@media(max-width:900px){
  .header-inner{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
  nav{padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right));max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto}
}
@media(hover:none){.button:hover{transform:none}.service-card:hover{background:transparent}}
@media(max-width:380px){
  h1{font-size:2.25rem}
  .intro h2,.section-heading h2,.process h2,.contact h2{font-size:2rem}
  .hero-content,.intro,.services,.resources,.contact{padding-left:16px;padding-right:16px}
  .luciana-content,.process-panel{padding-left:16px;padding-right:16px}
}
@supports not (aspect-ratio:1/1){
  .resource-visual{height:0;padding-bottom:100%}
  .resource-visual>span{position:absolute;inset:45% 0 auto;text-align:center}
}
@supports (overflow:clip){body{overflow-x:clip}}

/* Páginas de serviço */
.service-page main{background:var(--paper)}
.service-hero{background:var(--deep);color:#fff;padding:96px max(28px,calc((100vw - 980px)/2)) 82px}
.service-hero .breadcrumbs{font-size:.85rem;color:#bdd0d3;margin:0 0 38px}
.service-hero .breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.service-hero h1{font-size:3.6rem;font-size:clamp(2.65rem,6vw,5rem);max-width:920px;margin-bottom:24px}
.service-hero>p{max-width:760px;font-size:1.18rem;color:#d9e4e6}
.service-body{padding:88px max(28px,calc((100vw - 980px)/2))}
.service-body-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:76px;align-items:start}
.service-body h2{font-size:2.15rem;margin:54px 0 16px}
.service-body h2:first-child{margin-top:0}
.service-body h3{font-size:1.15rem;margin:0 0 8px}
.service-body p,.service-body li{color:#405b62}
.service-body ul{padding-left:1.25rem}
.service-body li{margin-bottom:10px}
.service-aside{position:-webkit-sticky;position:sticky;top:112px;background:#eef1e7;border-radius:var(--radius);padding:30px}
.service-aside p{margin-top:0}
.service-aside .button{width:100%;text-align:center;margin-top:12px}
.related-services{border-top:1px solid var(--line);margin-top:64px;padding-top:34px}
.related-services ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;list-style:none;padding:0}
.related-services a{font-weight:700;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:5px}
@media(max-width:760px){
  .service-hero{padding:66px 20px 58px}
  .service-body{padding:64px 20px}
  .service-body-grid{grid-template-columns:1fr;gap:42px}
  .service-aside{position:static}
  .related-services ul{grid-template-columns:1fr}
}
