@font-face{
  font-family:"Coolvetica";
  src:url("assets/Coolvetica-Rg.otf") format("opentype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
/* Gilmar Amaro — portfolio. Palette: mustard, terracotta, deep navy, sage blue, cream. */
:root{--mustard:#C0924D;--terracotta:#A8472E;--navy:#0E2D3A;--sage:#627A7E;--cream:#EEE6D3;--paper:#F8F6F0;--white:#fff;--ink:#16262b;--muted:#6f7978;--line:rgba(14,45,58,.17);--display:"Coolvetica","Space Grotesk",sans-serif;--body:"DM Sans",sans-serif;--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:absolute;left:-9999px;top:10px;background:var(--navy);color:white;padding:12px;z-index:100}.skip-link:focus{left:10px}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 6.2%;position:sticky;top:0;z-index:50;background:rgba(248,246,240,.91);backdrop-filter:blur(14px);border-bottom:1px solid rgba(14,45,58,.08)}.wordmark{font:700 27px var(--display);letter-spacing:-.1em}.wordmark span:first-child{color:var(--terracotta)}.wordmark-dot{color:var(--mustard);padding-left:5px}.main-nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:600}.main-nav a{transition:color .2s}.main-nav a:hover,.text-link:hover{color:var(--terracotta)}.nav-contact{border:1px solid var(--navy);border-radius:99px;padding:12px 17px}.nav-contact span{margin-left:8px}.menu-toggle{display:none;border:0;background:none}.section-wrap{width:min(1220px,88%);margin-inline:auto}.hero{position:relative;min-height:690px;padding:72px 0 24px;display:grid;grid-template-columns:1fr .9fr;align-items:center;overflow:hidden}.hero-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:linear-gradient(135deg,#e7f1ed 0%,#f4f1e5 53%,#ead8c7 100%);border-radius:0 0 34px 34px}.hero-sky:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(14,45,58,.17) .7px,transparent .7px);background-size:9px 9px;opacity:.25;mask-image:linear-gradient(90deg,#000,transparent 65%)}.sun{position:absolute;width:130px;height:130px;border-radius:50%;background:var(--mustard);opacity:.25;top:70px;right:19%}.orbit{position:absolute;border:1px solid rgba(14,45,58,.2);border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:530px;height:130px;top:52px;right:-20px}.orbit-two{width:640px;height:160px;top:22px;right:-70px}.doodle{position:absolute;font-size:36px;color:var(--terracotta);font-family:var(--display)}.doodle-a{right:9%;top:30%}.doodle-b{right:43%;top:12%;font-size:42px}.doodle-c{right:7%;bottom:19%;font-size:60px}.hero-line-art{position:absolute;right:-4%;bottom:10%;width:80%;height:52%;stroke:rgba(14,45,58,.24);stroke-width:1.2}.hero-copy,.hero-art,.hero-bottom{position:relative;z-index:2}.hero-copy{padding:25px 0 60px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.17em;font-weight:700;display:flex;align-items:center;gap:10px;margin:0 0 22px}.eyebrow-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--terracotta)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);letter-spacing:-.065em}h1{font-size:clamp(52px,6.6vw,92px);line-height:.91;margin:0 0 27px;font-weight:700}h1>span:first-child{color:var(--terracotta)}.period{color:var(--mustard)}.hero-intro{font-size:16px;line-height:1.65;max-width:390px;color:#43565a}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:22px;border-radius:100px;padding:15px 20px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--navy);color:var(--cream)}.button-dark:hover{background:var(--terracotta)}.button span{font-size:17px}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px;transition:color .2s}.text-link span{margin-left:8px}.hero-art{height:465px;max-width:475px;width:100%;justify-self:end;position:relative;transform:rotate(2deg)}.art-card{position:absolute;box-shadow:0 20px 45px #0e2d3a20}.art-card-back{width:65%;height:65%;right:3%;top:9%;background:var(--terracotta);color:var(--cream);padding:20px;transform:rotate(9deg)}.art-card-back span,.paper-index,.paper-footer{font-size:8px;letter-spacing:.15em}.art-card-back b{font:700 31px/.95 var(--display);display:block;margin-top:35px;letter-spacing:-.07em}.art-card-back i{font-style:normal;position:absolute;right:17px;bottom:7px;font-size:60px;color:var(--mustard)}.art-sun{position:absolute;width:130px;height:130px;background:var(--mustard);border-radius:50%;top:1%;left:16%;mix-blend-mode:multiply;opacity:.9}.art-circle{position:absolute;width:205px;height:205px;border-radius:50%;border:1px solid var(--navy);top:19%;left:12%}.art-block{position:absolute;width:115px;height:185px;background:var(--sage);bottom:10%;left:2%;transform:rotate(-12deg)}.art-paper{position:absolute;width:66%;height:72%;right:13%;bottom:8%;background:var(--cream);padding:17px;box-shadow:0 25px 55px #0e2d3a2a;transform:rotate(-5deg);border:1px solid #fff}.paper-shape{position:absolute;left:18%;top:22%;width:60%;height:35%;background:var(--mustard);border-radius:50% 50% 6% 6%;transform:rotate(-22deg)}.paper-shape:after{content:"";position:absolute;inset:18% -15% -18% 15%;border:2px solid var(--navy);border-radius:50%;transform:rotate(20deg)}.paper-type{position:absolute;left:17px;bottom:42px;font:700 32px/.83 var(--display);letter-spacing:-.08em}.paper-type span{color:var(--terracotta);font-size:25px;margin-left:10px}.paper-footer{position:absolute;bottom:15px;left:17px}.art-note{position:absolute;font-size:10px;font-weight:600;line-height:1.3;color:var(--terracotta)}.note-top{top:8%;right:2%;transform:rotate(8deg)}.note-bottom{bottom:4%;right:1%;transform:rotate(-5deg)}.hero-bottom{position:absolute;bottom:22px;left:0;right:0;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;font-weight:700;color:#56696a}.intro-strip{background:var(--navy);color:var(--cream);padding:23px 6%;display:flex;justify-content:center;align-items:center;gap:30px}.intro-strip p{font:500 clamp(16px,2.2vw,25px) var(--display);margin:0;letter-spacing:-.04em}.intro-strip em{color:var(--mustard);font-style:normal}.strip-mark{font-size:24px;color:var(--terracotta)}.projects{padding-top:120px;padding-bottom:120px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading h2,.about h2{font-size:clamp(42px,5.4vw,70px);line-height:.98;margin:0}.section-heading h2 span,.about h2 span{color:var(--terracotta)}.section-note{max-width:315px;font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 4px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.filter-button{border:1px solid var(--line);background:transparent;color:var(--navy);border-radius:50px;padding:10px 15px;font-size:11px;cursor:pointer;transition:.2s}.filter-button span{font-size:9px;margin-left:8px;opacity:.7}.filter-button:hover,.filter-button.active{background:var(--navy);color:var(--cream);border-color:var(--navy)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 22px}.project-card{min-width:0;transition:opacity .2s,transform .2s}.project-card.is-hidden{display:none}.project-large{grid-row:span 1}.project-wide{grid-column:span 2}.project-image{display:block;position:relative;overflow:hidden;min-height:330px;aspect-ratio:1.16;background:var(--cream);isolation:isolate}.project-large .project-image{aspect-ratio:1.35}.project-wide .project-image{aspect-ratio:2.1}.project-image:after{content:"";position:absolute;inset:0;border:1px solid #0e2d3a10;pointer-events:none}.mock-label{position:absolute;top:17px;left:18px;font-size:8px;letter-spacing:.14em;font-weight:700;z-index:5}.project-meta{display:flex;align-items:center;justify-content:space-between;padding:15px 1px 0}.project-type{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);margin:0 0 7px}.project-meta h3{font:600 19px var(--display);letter-spacing:-.04em;margin:0}.round-arrow{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:19px;transition:.2s;flex-shrink:0}.round-arrow:hover{background:var(--navy);color:var(--cream);transform:rotate(45deg)}.image-aurum{background:#d6c9a9;color:#18333a}.aurum-symbol{position:absolute;left:15%;top:24%;font:500 clamp(90px,13vw,170px)/1 var(--display);letter-spacing:-.1em}.aurum-symbol span{font-size:.26em;color:var(--terracotta);vertical-align:top;display:inline-block;margin:15px 0 0 6px}.aurum-name{position:absolute;left:16%;bottom:24%;font:600 clamp(28px,4vw,52px) var(--display);letter-spacing:.22em}.aurum-sub{position:absolute;left:17%;bottom:17%;font-size:8px;letter-spacing:.25em}.aurum-swatch{position:absolute;right:10%;top:22%;width:18%;height:54%;border:1px solid #18333a;transform:rotate(10deg)}.image-illustration{background:#b9d5d0;color:var(--navy)}.illus-sun{position:absolute;right:15%;top:17%;width:100px;height:100px;border-radius:50%;background:var(--mustard)}.illus-hill{position:absolute;bottom:-18%;width:90%;height:62%;border-radius:50% 50% 0 0}.hill-one{left:-18%;background:var(--sage);transform:rotate(-14deg)}.hill-two{right:-25%;background:var(--terracotta);height:45%;transform:rotate(14deg)}.illus-person{position:absolute;left:45%;bottom:22%;height:42%;width:22%;border-radius:48% 48% 10% 10%;background:var(--navy);transform:rotate(12deg)}.illus-person:before{content:"";position:absolute;width:100%;aspect-ratio:1;border-radius:50%;background:var(--mustard);top:-40%;left:-4%;border:2px solid var(--navy)}.illus-person span{position:absolute;top:4%;left:13%;width:72%;height:20%;border-radius:50%;background:var(--terracotta)}.illus-caption{position:absolute;left:7%;top:31%;font:700 clamp(25px,3.4vw,43px)/.9 var(--display);letter-spacing:-.07em;transform:rotate(-7deg)}.image-poster{background:var(--terracotta);color:var(--cream)}.poster-top{position:absolute;top:18%;left:10%;font:700 clamp(30px,4.5vw,60px)/.83 var(--display);letter-spacing:-.07em;z-index:2}.poster-graphic{position:absolute;right:7%;top:15%;width:43%;height:67%;border:1px solid var(--cream);border-radius:50%;transform:rotate(22deg)}.poster-graphic span{position:absolute;width:30%;height:120%;top:-10%;left:35%;border:1px solid var(--mustard);border-radius:50%}.poster-graphic span:nth-child(2){transform:rotate(60deg)}.poster-graphic span:nth-child(3){transform:rotate(120deg)}.poster-graphic b{position:absolute;left:35%;top:30%;font-size:65px;color:var(--mustard)}.poster-bottom{position:absolute;bottom:15px;left:18px;font-size:8px;letter-spacing:.18em}.image-editorial{background:#d8d9c9;display:flex;align-items:center;justify-content:center;gap:4%;padding:5%}.editorial-page{width:40%;height:88%;background:var(--cream);padding:5%;position:relative;box-shadow:5px 8px 0 #0e2d3a1c}.editorial-page>span{font-size:7px;letter-spacing:.15em}.editorial-page>b{display:block;font:700 clamp(23px,4vw,50px)/.8 var(--display);letter-spacing:-.08em;margin-top:18%}.editorial-page>i{position:absolute;bottom:7%;left:5%;font-style:normal;font-size:6px;letter-spacing:.1em}.page-two{background:var(--navy);color:var(--cream);transform:rotate(3deg)}.page-lines{height:52%;margin:18% 0 8%;background:repeating-linear-gradient(to bottom,transparent 0 10px,var(--sage) 10px 11px)}.page-stamp{border:1px solid var(--mustard);color:var(--mustard);width:45px;height:45px;display:grid;place-items:center;border-radius:50%;font:700 18px var(--display);margin-left:auto}.image-brand{background:var(--navy);color:var(--cream)}.brand-grid{position:absolute;top:20%;right:10%;width:44%;height:48%;display:grid;grid-template-columns:1fr 1fr;gap:5px;transform:rotate(7deg)}.brand-grid span{display:grid;place-items:center;background:var(--mustard);color:var(--navy);font:700 30px var(--display)}.brand-grid span:nth-child(2){background:var(--terracotta);color:var(--cream)}.brand-grid span:nth-child(3){background:var(--sage)}.brand-grid span:nth-child(4){background:var(--cream)}.brand-title{position:absolute;left:9%;bottom:19%;font:700 clamp(22px,3.2vw,39px)/.85 var(--display);letter-spacing:-.07em}.brand-footer{position:absolute;bottom:8%;left:9%;font-size:7px;letter-spacing:.14em}.image-drawing{background:#e4d6c2;color:var(--navy)}.drawing-loop{position:absolute;border:2px solid var(--terracotta);border-radius:50%;width:70%;height:50%;left:14%;top:20%;transform:rotate(-25deg)}.loop-two{border-color:var(--navy);transform:rotate(35deg);width:62%;left:21%;top:25%}.drawing-star{position:absolute;top:12%;right:12%;font-size:65px;color:var(--mustard)}.drawing-word{position:absolute;left:10%;bottom:16%;font:700 clamp(35px,5vw,60px)/.8 var(--display);letter-spacing:-.08em;transform:rotate(-7deg)}.drawing-note{position:absolute;right:8%;bottom:9%;font-size:8px;transform:rotate(7deg)}.portfolio-disclaimer{font-size:10px;color:var(--muted);margin-top:26px;line-height:1.5}.about{background:#fff;border-radius:32px;padding:55px 6.5% 65px;margin-bottom:120px;box-shadow:0 20px 60px #0e2d3a08}.about-top{display:flex;justify-content:space-between;align-items:center}.hand-note{font-size:12px;color:var(--terracotta);transform:rotate(-8deg)}.about-layout{display:grid;grid-template-columns:1fr .8fr;gap:10%;padding:25px 0 65px;align-items:center}.about-title{position:relative}.about-title h2{font-size:clamp(45px,6vw,78px)}.about-stamp{position:absolute;right:8%;bottom:-10px;border:1px solid var(--mustard);border-radius:50%;width:95px;height:95px;display:grid;place-content:center;text-align:center;color:var(--terracotta);font:600 10px/1.5 var(--display);transform:rotate(12deg)}.about-copy{max-width:440px}.about-lead{font:600 22px/1.25 var(--display);letter-spacing:-.04em}.about-copy p:not(.about-lead){font-size:13px;line-height:1.8;color:#617071}.about-copy .text-link{display:inline-block;margin-top:10px}.skills-row{border-top:1px solid var(--line);padding-top:27px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.skills-row>div{border-right:1px solid var(--line);padding-right:18px}.skills-row>div:last-child{border:0}.skill-number{color:var(--terracotta);font-size:10px;letter-spacing:.1em}.skills-row h3{font:600 16px var(--display);margin:16px 0 7px}.skills-row p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.process{padding-bottom:120px}.process-heading{margin-bottom:52px}.process-list{border-top:1px solid var(--line)}.process-step{display:grid;grid-template-columns:60px 1fr 1.1fr 55px;gap:20px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line);transition:padding .2s}.process-step:hover{padding-left:10px;padding-right:10px}.process-step>span:first-child{font-size:11px;color:var(--terracotta)}.process-step h3{font:600 23px var(--display);letter-spacing:-.04em;margin:0}.process-step p{font-size:12px;line-height:1.6;color:var(--muted);max-width:360px;margin:0}.step-symbol{font-size:32px;text-align:right;color:var(--mustard)}.tools-band{background:var(--cream);padding:34px 6%;display:grid;grid-template-columns:1fr 2.4fr 1fr;gap:25px;align-items:center}.tools-label{font-size:9px;letter-spacing:.15em;font-weight:700}.tools-list{display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap}.tools-list span{font:600 13px var(--display)}.tools-band p{font-size:10px;color:var(--muted);text-align:right;margin:0}.contact{position:relative;background:var(--navy);color:var(--cream);border-radius:32px 32px 0 0;padding:75px 7% 35px;overflow:hidden}.contact .eyebrow{color:#c1ceca}.contact .eyebrow-dot{background:var(--mustard)}.contact h2{font-size:clamp(48px,7.5vw,96px);line-height:.92;margin:45px 0 35px;position:relative;z-index:2}.contact h2 em{font-style:normal;color:var(--mustard)}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px;padding-bottom:50px;position:relative;z-index:2}.contact-bottom p{font-size:13px;line-height:1.7;color:#c1ceca;max-width:350px;margin:0}.button-light{background:var(--cream);color:var(--navy);white-space:nowrap}.button-light:hover{background:var(--mustard)}.contact-links{border-top:1px solid #ffffff30;padding-top:20px;display:flex;gap:25px;position:relative;z-index:2}.contact-links a{font-size:11px;color:#c1ceca}.contact-links a span{color:var(--mustard);margin-left:5px}.contact-deco{position:absolute;right:8%;top:20%;width:280px;height:280px;border:1px solid #ffffff22;border-radius:50%;display:grid;place-items:center;color:var(--terracotta);font-size:80px;transform:rotate(15deg)}.contact-deco:before,.contact-deco:after{content:"";position:absolute;inset:18px;border:1px solid #ffffff20;border-radius:50%}.contact-deco:after{inset:42px}.contact-deco span:nth-child(2){position:absolute;right:10%;top:20%;font-size:40px;color:var(--mustard)}.contact-deco span:nth-child(3){position:absolute;left:9%;bottom:20%;font-size:36px;color:var(--sage)}.site-footer{width:min(1220px,88%);margin:auto;min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:18px}.site-footer p,.site-footer>a:not(.wordmark),.site-footer>span{font-size:10px;color:var(--muted);margin:0}.footer-mark{font-size:22px}
@media(min-width:1400px){.hero{min-height:760px}.hero-art{height:530px}}
@media(max-width:900px){.hero{min-height:620px;grid-template-columns:1fr .8fr;padding-top:45px}.hero-art{height:390px}.art-paper{width:72%;right:6%}.art-card-back{right:0}.section-wrap{width:90%}.projects{padding-top:90px;padding-bottom:90px}.about{margin-bottom:90px}.tools-band{grid-template-columns:1fr 2fr}.tools-band p{grid-column:1/-1;text-align:left}.contact-deco{right:-4%;opacity:.7}.contact h2{font-size:clamp(48px,8vw,76px)}}
@media(max-width:650px){.site-header{height:68px;padding:0 5%}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:9px;z-index:55}.menu-toggle span{width:23px;height:2px;background:var(--navy);display:block;transition:.2s}.main-nav{position:absolute;top:67px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:22px 6% 28px;display:none;align-items:stretch;gap:20px;flex-direction:column}.main-nav.open{display:flex}.nav-contact{align-self:flex-start}.hero{display:flex;flex-direction:column;align-items:stretch;padding:52px 0 55px;min-height:unset}.hero-sky{border-radius:0 0 22px 22px}.hero-copy{padding:0 0 5px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(51px,13vw,76px)}.hero-intro{font-size:14px;max-width:340px}.hero-actions{gap:17px;flex-wrap:wrap}.button{padding:14px 17px}.hero-art{width:86%;height:340px;align-self:center;margin:25px 0 25px}.art-sun{width:95px;height:95px}.art-circle{width:150px;height:150px}.art-block{height:130px;width:85px}.art-card-back b{font-size:26px}.paper-type{font-size:27px}.hero-bottom{bottom:13px;gap:12px;font-size:6px;letter-spacing:.06em}.hero-bottom span:nth-child(2){display:none}.intro-strip{padding:19px 5%;gap:12px}.intro-strip p{font-size:17px}.projects{padding-top:75px;padding-bottom:75px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:48px}.section-note{margin-top:20px;font-size:12px}.filter-row{gap:6px}.filter-button{font-size:10px;padding:9px 12px}.project-grid{grid-template-columns:1fr;gap:32px}.project-wide{grid-column:auto}.project-image,.project-large .project-image{min-height:300px;aspect-ratio:1.08}.project-wide .project-image{aspect-ratio:1.1}.project-meta h3{font-size:17px}.aurum-symbol{font-size:130px}.aurum-name{font-size:36px}.poster-top{font-size:43px}.editorial-page>b{font-size:36px}.about{width:92%;padding:35px 7% 40px;border-radius:23px;margin-bottom:75px}.about-top{align-items:start}.about-top .eyebrow{font-size:8px}.hand-note{font-size:10px}.about-layout{grid-template-columns:1fr;gap:32px;padding:10px 0 40px}.about-title h2{font-size:57px}.about-stamp{width:78px;height:78px;font-size:8px;right:3%;bottom:-12px}.about-lead{font-size:20px}.skills-row{grid-template-columns:1fr 1fr;gap:25px 15px}.skills-row>div:nth-child(2){border:0}.skills-row h3{font-size:15px}.process{padding-bottom:75px}.process-heading{margin-bottom:30px}.process-step{grid-template-columns:30px 1fr 30px;gap:12px;padding:20px 0}.process-step h3{font-size:19px}.process-step p{grid-column:2;grid-row:2;font-size:11px}.step-symbol{grid-column:3;grid-row:1/3;font-size:26px}.tools-band{padding:28px 6%;grid-template-columns:1fr;gap:18px}.tools-list{justify-content:flex-start;gap:12px 18px}.tools-list span{font-size:12px}.tools-band p{grid-column:auto}.contact{width:100%;border-radius:24px 24px 0 0;padding:55px 6% 28px}.contact h2{font-size:clamp(44px,11vw,68px);margin:36px 0 28px}.contact-deco{width:200px;height:200px;right:-55px;top:25%;opacity:.35}.contact-bottom{align-items:flex-start;flex-direction:column;gap:22px;padding-bottom:35px}.contact-bottom p{max-width:300px}.contact-links{gap:20px;flex-wrap:wrap}.site-footer{width:88%;padding:20px 0;min-height:100px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.site-footer p{grid-column:1/-1;grid-row:2}.site-footer>a:not(.wordmark),.site-footer>span{text-align:right}.site-footer>span{grid-column:2;grid-row:2}.footer-mark{grid-column:1;grid-row:1}.site-footer>a:not(.wordmark){grid-column:2;grid-row:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.reveal-ready{opacity:.01;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.reveal-ready.revealed{opacity:1;transform:translateY(0)}


/* Profile section inspired by the supplied portfolio/CV reference */
.profile-details{display:grid;grid-template-columns:1.08fr 1fr 1fr;gap:32px;border-top:1px solid var(--line);padding-top:28px}
.profile-column h3{font:400 15px var(--display);text-transform:uppercase;letter-spacing:-.01em;margin:0 0 18px;color:var(--navy)}
.detail-list,.plain-detail{list-style:none;margin:0;padding:0}
.detail-list{display:grid;gap:10px}
.detail-list li{display:grid;gap:3px;font-size:12px;line-height:1.4}
.detail-list li span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.detail-list a{overflow-wrap:anywhere;transition:color .2s}
.detail-list a:hover{color:var(--terracotta)}
.software-icons{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
.software-tile{width:56px;display:flex;flex-direction:column;align-items:center;gap:7px}
.software-tile>span{height:50px;width:50px;display:grid;place-items:center;border-radius:10px;font:600 24px var(--display);box-shadow:0 5px 12px #0e2d3a14}
.software-tile small{font-size:8px;color:var(--muted);text-align:center}
.photoshop>span{background:#001e36;color:#31a8ff;border:1px solid #31a8ff}
.illustrator>span{background:#330000;color:#ff9a00;border:1px solid #ff9a00}
.aftereffects>span{background:#1b1147;color:#c99aff;border:1px solid #c99aff}
.detail-note{font-size:10px;line-height:1.5;color:var(--muted);margin:15px 0 0}
.plain-detail{display:grid;gap:13px}
.plain-detail li{display:grid;gap:4px}
.plain-detail strong{font-size:11px;font-weight:700}
.plain-detail span{font-size:11px;line-height:1.5;color:var(--muted)}
.profile-column .subheading{margin-top:24px}
@media(max-width:800px){.profile-details{grid-template-columns:1fr 1fr;gap:28px}.profile-column:last-child{grid-column:1/-1}.profile-column:last-child .plain-detail{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.profile-details{grid-template-columns:1fr;gap:28px}.profile-column:last-child{grid-column:auto}.profile-column:last-child .plain-detail{grid-template-columns:1fr}.software-icons{gap:10px}}


/* Refinamentos solicitados por Gil */
.wordmark-full{font:400 18px "Coolvetica","Space Grotesk",sans-serif;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap}
.wordmark-full span{font:600 10px var(--body);letter-spacing:.17em;color:var(--terracotta);margin-left:8px}
.footer-mark.wordmark-full{font-size:15px}
.hero.section-wrap{width:100%;max-width:none;margin:0;padding-left:max(6%,calc((100% - 1220px)/2));padding-right:max(6%,calc((100% - 1220px)/2))}
.hero{min-height:calc(100vh - 82px);border-radius:0}
.hero-sky{border-radius:0}
h1,h2,h3,.project-meta h3,.about-lead,.process-step h3,.art-card-back b,.paper-type,.poster-top,.editorial-page>b,.brand-title,.drawing-word{
  letter-spacing:.015em;
  word-spacing:.035em;
  text-transform:uppercase;
}
h1{letter-spacing:.012em;line-height:.98}
.section-heading h2,.about h2{letter-spacing:.015em;line-height:1.02}
.project-meta h3{letter-spacing:.015em;line-height:1.2}
.project-grid{align-items:start}
.project-card{align-self:start}
.project-image{height:auto;min-height:0;aspect-ratio:1.08}
.project-large .project-image{aspect-ratio:1.08}
.project-wide .project-image{aspect-ratio:2.05}
.project-meta{min-height:76px;align-items:flex-start}
.about{margin-top:72px}
.about-layout{grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:8%;align-items:center}
.about-portrait{min-width:0}
.portrait-placeholder{aspect-ratio:3/4;max-height:430px;background:linear-gradient(145deg,#627A7E 0%,#0E2D3A 62%,#A8472E 62%,#A8472E 100%);color:#EEE6D3;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:20px}
.portrait-placeholder:before{content:"";position:absolute;width:70%;aspect-ratio:1;border:1px solid #EEE6D3aa;border-radius:50%;top:13%;left:15%}
.portrait-placeholder:after{content:"";position:absolute;width:46%;height:43%;border-radius:48% 48% 15% 15%;background:#C0924D;left:27%;top:28%;opacity:.9}
.portrait-placeholder span,.portrait-placeholder strong,.portrait-placeholder small{position:relative;z-index:2}
.portrait-placeholder span{font-size:9px;letter-spacing:.16em}
.portrait-placeholder strong{font:400 clamp(30px,4vw,52px)/.9 "Coolvetica","Space Grotesk",sans-serif;letter-spacing:.02em}
.portrait-placeholder small{font-size:8px;letter-spacing:.16em}
.about-portrait>p{font-size:9px;color:var(--muted);font-style:italic;margin:9px 0 0}
.about-name{font:400 clamp(34px,4vw,58px)/.98 "Coolvetica","Space Grotesk",sans-serif;text-transform:uppercase;letter-spacing:.025em;margin:0 0 22px;color:var(--navy)}
.about-name span{color:var(--terracotta)}
.profile-details{grid-template-columns:1.08fr 1fr 1fr;align-items:start}
@media(max-width:900px){
  .hero.section-wrap{padding-left:5%;padding-right:5%}
  .about-layout{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:6%}
  .profile-details{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .wordmark-full{font-size:14px;letter-spacing:.04em}
  .wordmark-full span{font-size:8px;margin-left:4px}
  .hero{min-height:unset}
  .hero.section-wrap{padding-left:5%;padding-right:5%}
  .about{margin-top:45px}
  .about-layout{grid-template-columns:1fr;gap:25px}
  .about-portrait{max-width:290px}
  .about-name{font-size:43px}
  .project-grid{align-items:stretch}
  .project-image,.project-large .project-image,.project-wide .project-image{aspect-ratio:1.08}
  .project-meta{min-height:unset}
}


/* Hero com retrato real de Gilmar e degradê lateral para leitura do título */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#EEE6D3}
.hero-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;opacity:.96}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  linear-gradient(90deg,
    rgba(238,230,211,.99) 0%,
    rgba(238,230,211,.96) 28%,
    rgba(238,230,211,.78) 43%,
    rgba(238,230,211,.28) 61%,
    rgba(14,45,58,.08) 100%),
  linear-gradient(0deg,rgba(14,45,58,.20) 0%,transparent 35%)}
.hero .hero-sky,.hero .hero-art,.hero .hero-visual{background:transparent}
.hero .hero-content,.hero .hero-copy,.hero .hero-inner{position:relative;z-index:1}
.hero h1,.hero .hero-kicker,.hero .hero-description,.hero .hero-actions{ text-shadow:0 1px 12px rgba(238,230,211,.16)}
@media(max-width:700px){
  .hero-photo img{object-position:56% center}
  .hero:before{background:linear-gradient(90deg,rgba(238,230,211,.97) 0%,rgba(238,230,211,.86) 54%,rgba(238,230,211,.30) 100%),linear-gradient(0deg,rgba(14,45,58,.18),transparent 40%)}
}


/* Hero simplificado: prioridade para a foto de fundo, título e futura segunda foto */
.hero-sky,.hero-line-art,.hero .sun,.hero .orbit,.hero .doodle{display:none!important}
.hero-art,.hero-bottom{display:none!important}
.hero{display:flex;align-items:center;min-height:calc(100vh - 82px);padding-top:70px;padding-bottom:70px}
.hero-copy{width:min(58%,700px);position:relative;z-index:2}
.hero-portrait-slot{position:absolute;z-index:1;right:5%;top:12%;bottom:12%;width:30%;pointer-events:none}
.hero:before{background:linear-gradient(90deg,
  rgba(238,230,211,.98) 0%,
  rgba(238,230,211,.94) 29%,
  rgba(238,230,211,.76) 45%,
  rgba(238,230,211,.20) 67%,
  rgba(14,45,58,.04) 100%)}
.hero h1{max-width:760px}
@media(max-width:700px){
  .hero{min-height:calc(100svh - 70px);padding-top:54px;padding-bottom:45px}
  .hero-copy{width:100%}
  .hero-portrait-slot{right:0;top:0;bottom:0;width:42%}
  .hero:before{background:linear-gradient(90deg,rgba(238,230,211,.98) 0%,rgba(238,230,211,.91) 52%,rgba(238,230,211,.42) 100%)}
}


/* Retrato editorial secundário no lado direito da capa */
.hero-portrait-slot{
  position:absolute;z-index:1;right:2.5%;top:0;bottom:0;width:42%;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  pointer-events:none;mix-blend-mode:multiply;
}
.hero-portrait-slot img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;
  opacity:.92;filter:saturate(.88) contrast(1.02);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 9%,#000 30%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 9%,#000 30%,#000 100%);
}
.hero:before{
  background:linear-gradient(90deg,
    rgba(238,230,211,.99) 0%,
    rgba(238,230,211,.96) 30%,
    rgba(238,230,211,.83) 44%,
    rgba(238,230,211,.30) 61%,
    rgba(238,230,211,.02) 83%,
    rgba(238,230,211,0) 100%);
}
@media(max-width:700px){
  .hero-portrait-slot{right:-7%;width:63%;opacity:.48}
  .hero-portrait-slot img{object-position:48% center}
  .hero:before{background:linear-gradient(90deg,rgba(238,230,211,.99) 0%,rgba(238,230,211,.93) 50%,rgba(238,230,211,.45) 100%)}
}


/* Organização final das fotografias: primeira imagem na capa, retrato lateral na seção Sobre */
.hero-portrait-slot{display:none!important}
.about-portrait .portrait-placeholder{display:none!important}
.about-portrait-photo{
  display:block;width:100%;aspect-ratio:3/4;max-height:560px;
  object-fit:cover;object-position:center 27%;
  filter:saturate(.9) contrast(1.02);
}
.about-portrait>p{font-size:9px;color:var(--muted);font-style:italic;margin:9px 0 0}


/* Movimento e profundidade 3D — mantendo a identidade visual editorial */
html{scroll-behavior:smooth}
body{perspective:1200px}
.hero{transform-style:preserve-3d}
.hero-photo img{transform:scale(1.035);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.hero:hover .hero-photo img{transform:scale(1.075)}
.hero-copy{transform:translateZ(24px);transform-style:preserve-3d}
.hero h1{animation:heroTitleIn .95s cubic-bezier(.2,.8,.2,1) both}
.hero .hero-kicker,.hero .hero-description,.hero .hero-actions{animation:heroFadeUp .85s ease both}
.hero .hero-kicker{animation-delay:.12s}
.hero .hero-description{animation-delay:.24s}
.hero .hero-actions{animation-delay:.36s}
@keyframes heroTitleIn{from{opacity:0;transform:translate3d(0,32px,-30px) rotateX(7deg);filter:blur(5px)}to{opacity:1;transform:translate3d(0,0,0) rotateX(0);filter:blur(0)}}
@keyframes heroFadeUp{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.hero-portrait-slot{transform:translateZ(45px);transform-style:preserve-3d}
.project-card{transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s,box-shadow .45s;will-change:transform}
.project-card:hover{transform:perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(-7px);filter:saturate(1.04);box-shadow:0 24px 55px rgba(14,45,58,.12)}
.project-image{overflow:hidden;transform:translateZ(0)}
.project-image svg,.project-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.project-card:hover .project-image svg,.project-card:hover .project-image img{transform:scale(1.035)}
.about-portrait{perspective:900px}
.about-portrait-photo{transform:rotateY(-3deg) rotateX(1deg);box-shadow:18px 22px 0 rgba(192,146,77,.18);transition:transform .55s,box-shadow .55s}
.about-portrait:hover .about-portrait-photo{transform:rotateY(0) rotateX(0) translateY(-4px);box-shadow:24px 28px 0 rgba(168,71,46,.18)}
.software-tile{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.software-tile:hover{transform:translateY(-6px) rotate(-2deg)}
.profile-column,.process-step{transition:transform .35s ease}
.profile-column:hover{transform:translateY(-3px)}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .project-card:hover,.about-portrait:hover .about-portrait-photo{transform:none}
}
@media(max-width:700px){
  .project-card:hover{transform:translateY(-3px)}
  .about-portrait-photo{transform:none;box-shadow:10px 12px 0 rgba(192,146,77,.18)}
}

.will-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.will-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1;transform:none}}


/* Retrato de perfil na segunda seção, sem alterar a fotografia da capa */
.hero-portrait-slot{display:none!important}
.about-portrait .portrait-placeholder{display:none!important}
.about-portrait-photo{
  display:block;
  width:100%;
  aspect-ratio:3/4;
  max-height:560px;
  object-fit:cover;
  object-position:center 28%;
  border-radius:2px;
  filter:saturate(.92) contrast(1.03);
  box-shadow:18px 20px 0 rgba(192,146,77,.18);
  transition:transform .5s ease,box-shadow .5s ease;
}
.about-portrait:hover .about-portrait-photo{
  transform:translateY(-4px) rotateY(-2deg);
  box-shadow:24px 26px 0 rgba(168,71,46,.16);
}

/* Capas reais dos projetos publicados no Behance */
.behance-cover{background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:space-between;padding:18px;color:#fff;isolation:isolate}
.behance-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,45,58,.08),rgba(14,45,58,.55));z-index:-1;transition:opacity .35s}
.behance-cover:hover:before{opacity:.72}
.behance-cover .mock-label{top:17px;left:18px;color:#fff;background:rgba(14,45,58,.45);padding:8px 10px;backdrop-filter:blur(6px)}
.behance-open{font-size:10px;font-weight:700;letter-spacing:.12em;border:1px solid rgba(255,255,255,.8);border-radius:99px;padding:10px 13px;margin-left:auto;transition:transform .3s,background .3s}
.behance-cover:hover .behance-open{transform:translateY(-4px);background:rgba(255,255,255,.15)}


/* Ajuste: seção de contato em largura total */
.contact.section-wrap{width:100%;max-width:none;margin-left:0;margin-right:0;border-radius:0;}


/* Galeria de ilustração autoral a partir dos arquivos enviados pelo artista */
.illustrations{padding-top:100px;padding-bottom:115px}
.illustration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.illustration-card{min-width:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.illustration-card:hover{transform:translateY(-7px)}
.illustration-art{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;aspect-ratio:4/5;background:#EEE6D3;border:1px solid rgba(14,45,58,.09)}
.illustration-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
/* Mantém a primeira ilustração preenchendo a moldura, sem faixas laterais */
.illustration-card:first-child .illustration-art img{object-fit:cover;object-position:center center}
.illustration-card:hover .illustration-art img{transform:scale(1.025)}
.illustration-feature .illustration-art{aspect-ratio:4/5}
.illustration-meta{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:16px 2px 0}
.illustration-meta h3{margin:5px 0 0;font-size:clamp(18px,2vw,24px);letter-spacing:-.035em}
.illustration-index{font-size:11px;color:var(--mustard,#C0924D);font-weight:700;letter-spacing:.12em}
@media(max-width:850px){.illustration-grid{grid-template-columns:1fr 1fr}.illustration-feature{grid-column:span 2}.illustration-feature .illustration-art{aspect-ratio:1.4}.illustrations{padding-top:75px;padding-bottom:80px}}
@media(max-width:560px){.illustration-grid{grid-template-columns:1fr;gap:30px}.illustration-feature{grid-column:auto}.illustration-feature .illustration-art,.illustration-art{aspect-ratio:4/5}.illustrations{padding-top:60px;padding-bottom:65px}}

/* Uniformiza a altura das três capas de ilustração */
.illustration-grid .illustration-art{aspect-ratio:4/5;height:auto;min-height:0;}
.illustration-grid .illustration-card:first-child .illustration-art{aspect-ratio:4/5;}
/* Controles tipográficos ajustáveis pelo administrador */
.hero-copy h1{font-family:var(--site-display-font, Coolvetica, Arial, sans-serif);font-size:calc(clamp(3.4rem, 7.2vw, 7.5rem) * var(--site-title-scale, 1));letter-spacing:var(--site-letter-spacing, 0)}

/* Seções personalizadas criadas pelo administrador */
.custom-content-section{padding:clamp(64px,9vw,120px) max(5vw,24px);border-top:1px solid rgba(14,45,58,.14);color:var(--navy,#0E2D3A)}
.custom-content-inner{max-width:1180px;margin:0 auto}.custom-content-section .section-kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.7}.custom-content-section h2{font-family:var(--site-display-font,Coolvetica,Arial,sans-serif);font-size:clamp(2.4rem,5vw,5rem);line-height:.98;letter-spacing:-.025em;margin:12px 0 22px}.custom-content-description{max-width:760px;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.65}.custom-content-media{margin-top:30px;max-width:100%;}.custom-content-media img,.custom-content-media video{display:block;max-width:100%;max-height:75vh;width:auto;height:auto;border-radius:3px}.custom-content-media audio{width:min(100%,680px);display:block}.custom-content-link{display:inline-flex;align-items:center;gap:12px;margin-top:12px;padding:14px 18px;border:1px solid currentColor;border-radius:999px;color:inherit;text-decoration:none;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.custom-content-link:hover{background:var(--navy,#0E2D3A);color:var(--cream,#EEE6D3)}


/* Controle discreto de música de fundo. */
.site-music-toggle{position:fixed;right:22px;bottom:22px;z-index:9999;display:flex;align-items:center;gap:9px;padding:12px 16px;border:1px solid rgba(14,45,58,.25);border-radius:999px;background:var(--cream,#EEE6D3);color:var(--navy,#0E2D3A);font:inherit;font-size:12px;letter-spacing:.04em;cursor:pointer;box-shadow:0 8px 24px rgba(14,45,58,.12);transition:transform .2s ease,background .2s ease;}
.site-music-toggle:hover{transform:translateY(-2px)}.site-music-toggle>span:first-child{font-size:18px;line-height:1}.site-music-toggle.is-playing{background:var(--navy,#0E2D3A);color:var(--cream,#EEE6D3)}
@media(max-width:600px){.site-music-toggle{right:12px;bottom:12px;padding:10px 13px;font-size:11px}}


/* Personalização visual + movimento interativo avançado */
.site-header{background:color-mix(in srgb,var(--header-bg,#EEE6D3) calc(var(--header-opacity,.92)*100%),transparent);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);transition:background .35s,box-shadow .35s}
.has-scrolled .site-header{box-shadow:0 12px 35px #0e2d3a12}
.site-footer{background-color:var(--footer-bg,#0E2D3A);color:var(--footer-text,#EEE6D3);border-radius:18px 18px 0 0;padding-left:4%;padding-right:4%;transition:background-color .4s,color .4s}
.site-footer p,.site-footer a:not(.wordmark),.site-footer>span{color:var(--footer-text,#EEE6D3)}
.site-footer .footer-mark.wordmark-full span{color:var(--terracotta)}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--terracotta),var(--gold,#C0924D),var(--sage,#627A7E));pointer-events:none}
.hero-photo img{transform:scale(1.035) translate3d(calc(var(--pointer-x,0px)*-.35),calc(var(--pointer-y,0px)*-.35),0);transition:transform .5s cubic-bezier(.2,.7,.2,1),object-position .4s}
.hero-sky{transform:translate3d(calc(var(--pointer-x,0px)*.6),calc(var(--pointer-y,0px)*.6),0);transition:transform .4s ease}
.hero-copy{transform:translate3d(calc(var(--pointer-x,0px)*-.12),calc(var(--pointer-y,0px)*-.12),0);transition:transform .35s ease}
.project-card{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(0);transition:transform .22s ease,filter .3s;transform-style:preserve-3d;will-change:transform}
.project-card:hover{filter:drop-shadow(0 20px 22px #0e2d3a1c)}
.project-card .project-image{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s;overflow:hidden}
.project-card:hover .project-image{filter:saturate(1.12) contrast(1.03)}
.button,.nav-contact{transform:translate3d(var(--mag-x,0px),var(--mag-y,0px),0);transition:transform .2s ease,box-shadow .25s}
.button:hover,.nav-contact:hover{box-shadow:0 12px 28px #0e2d3a24}
.motion-reveal{opacity:0;transform:translateY(32px) scale(.985);filter:blur(3px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1),filter .8s}
.motion-reveal.motion-in{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
.motion-reveal:nth-child(3n+2){transition-delay:.08s}.motion-reveal:nth-child(3n+3){transition-delay:.15s}
:root[data-motion="cinematic"] .motion-reveal{transition-duration:1.1s}:root[data-motion="bold"] .motion-reveal{transition-duration:.55s}:root[data-motion="bold"] .project-card:hover{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-8px) scale(1.015)}
:root[data-motion="minimal"] .motion-reveal{filter:none;transform:translateY(12px);transition-duration:.35s}
@media(max-width:650px){.project-card{transform:none!important}.hero-photo img,.hero-sky,.hero-copy{transform:none!important}.site-footer{width:100%;border-radius:18px 18px 0 0}}
@media(prefers-reduced-motion:reduce){.motion-reveal,.project-card,.hero-photo img,.hero-sky,.hero-copy,.button,.nav-contact{transition:none!important;transform:none!important;filter:none!important;opacity:1!important}.reading-progress{display:none}}


/* Correção visual: rodapé proporcional e faixa de ferramentas sem sobreposição */
.tools-band{position:relative;z-index:1;display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,2.4fr) minmax(180px,1fr);align-items:center;gap:clamp(16px,2.4vw,32px);padding:clamp(24px,3.2vw,42px) clamp(24px,6vw,88px);}
.tools-list{min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 22px;}
.tools-list span{white-space:nowrap;line-height:1.4;}
.tools-band p{min-width:0;line-height:1.5;}
.contact.section-wrap{width:100%;max-width:none;margin:0;border-radius:0;}
.contact{width:100%;max-width:none;margin:0;border-radius:0;padding:clamp(54px,6vw,82px) clamp(24px,7.2vw,110px) 34px;}
.contact h2{max-width:1180px;font-size:clamp(42px,7.2vw,96px);line-height:.98;overflow-wrap:anywhere;}
.contact-bottom{gap:28px;padding-bottom:clamp(30px,4vw,50px);}
.contact-bottom p{max-width:520px;line-height:1.7;}
.contact-links{display:flex;flex-wrap:wrap;gap:14px 28px;}
.site-footer{box-sizing:border-box;width:calc(100% - clamp(32px,10vw,160px));max-width:1380px;min-height:96px;margin:0 auto;padding:22px clamp(18px,3.8vw,54px);display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(180px,1.4fr) minmax(100px,.8fr) minmax(120px,1fr) auto;align-items:center;gap:18px;background-color:var(--footer-bg,#0E2D3A);color:var(--footer-text,#EEE6D3);border-radius:18px 18px 0 0;}
.site-footer .footer-mark{grid-column:auto;grid-row:auto;white-space:nowrap;}
.site-footer p,.site-footer>a:not(.wordmark),.site-footer>span{grid-column:auto;grid-row:auto;margin:0;font-size:11px;line-height:1.5;text-align:left;color:var(--footer-text,#EEE6D3);}
.site-footer p{max-width:260px;}
.site-footer>span{text-align:right;white-space:nowrap;}
@media(max-width:1000px){.tools-band{grid-template-columns:1fr;gap:16px}.tools-list{justify-content:flex-start}.tools-band p{text-align:left}.site-footer{grid-template-columns:1fr 1fr;gap:16px 20px;padding:24px}.site-footer .footer-mark{grid-column:1;grid-row:1}.site-footer p{grid-column:1/-1;grid-row:2}.site-footer>a:not(.wordmark){grid-column:2;text-align:right}.site-footer>span{grid-column:2;grid-row:3;text-align:right}}
@media(max-width:600px){.contact{padding:48px 22px 28px}.contact h2{font-size:clamp(38px,11vw,58px);margin:28px 0 24px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:20px}.contact-deco{opacity:.22}.site-footer{width:calc(100% - 28px);grid-template-columns:1fr;gap:14px;padding:22px;border-radius:14px 14px 0 0}.site-footer .footer-mark,.site-footer p,.site-footer>a:not(.wordmark),.site-footer>span{grid-column:1;grid-row:auto;text-align:left}.site-footer p{max-width:none}.site-footer>span{white-space:normal}.tools-list{gap:10px 16px}.tools-list span{font-size:12px}}


/* CORREÇÃO DEFINITIVA DO RODAPÉ — 14/10/2026 */
.tools-band{position:relative;z-index:0;isolation:isolate;min-height:120px;grid-template-columns:minmax(180px,1fr) minmax(0,2fr) minmax(210px,1fr);align-items:center;padding:clamp(28px,4vw,48px) clamp(24px,7.2vw,110px);gap:clamp(18px,3vw,40px);}
.tools-label{line-height:1.5;white-space:normal;}
.tools-list{justify-content:flex-start;gap:12px clamp(14px,2vw,26px);}
.tools-list span{white-space:normal;}
.tools-band p{text-align:right;margin:0;max-width:260px;justify-self:end;}
.contact.section-wrap,.contact{width:100%;max-width:none;margin:0;border-radius:0;}
.contact{padding:clamp(52px,6vw,78px) clamp(24px,7.2vw,110px) 30px;overflow:hidden;}
.contact h2{max-width:1100px;font-size:clamp(44px,6.8vw,90px);line-height:.96;margin:clamp(28px,3.5vw,46px) 0 30px;overflow-wrap:normal;}
.contact-bottom{align-items:center;gap:30px;padding-bottom:clamp(28px,3.5vw,42px);}
.contact-bottom p{max-width:430px;}
.contact-links{padding-top:18px;gap:16px 28px;}
.site-footer{box-sizing:border-box;width:100%;max-width:none;min-height:94px;margin:0;padding:24px clamp(24px,7.2vw,110px);display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(180px,1.2fr) minmax(100px,.8fr) minmax(140px,1fr) auto;align-items:center;gap:clamp(12px,2vw,26px);background-color:var(--footer-bg,var(--navy,#0E2D3A));color:var(--footer-text,var(--cream,#EEE6D3));border-radius:0;border-top:1px solid rgba(238,230,211,.18);}
.site-footer .footer-mark{grid-column:auto;grid-row:auto;white-space:normal;line-height:1.4;}
.site-footer p,.site-footer>a:not(.wordmark),.site-footer>span{grid-column:auto;grid-row:auto;margin:0;font-size:11px;line-height:1.5;text-align:left;color:var(--footer-text,var(--cream,#EEE6D3));min-width:0;}
.site-footer p{max-width:260px;}
.site-footer>span{text-align:right;white-space:nowrap;}
.site-footer .admin-footer-link{text-align:center;}
@media(max-width:1050px){.tools-band{grid-template-columns:1fr;gap:14px;padding:28px 6%;}.tools-list{justify-content:flex-start}.tools-band p{text-align:left;justify-self:start;max-width:none}.site-footer{grid-template-columns:1fr 1fr;gap:16px 22px;padding:24px 6%;}.site-footer .footer-mark{grid-column:1;grid-row:1}.site-footer p{grid-column:1/-1;grid-row:2;max-width:none}.site-footer>a:not(.wordmark){grid-column:2;text-align:right}.site-footer .admin-footer-link{grid-row:3}.site-footer>span{grid-column:1;grid-row:3;text-align:left}}
@media(max-width:600px){.contact{padding:46px 22px 26px}.contact h2{font-size:clamp(38px,10.5vw,58px);line-height:.98;margin:28px 0 24px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:20px;padding-bottom:30px}.contact-deco{width:170px;height:170px;right:-65px;top:27%;opacity:.18}.contact-links{gap:14px 22px}.site-footer{width:100%;grid-template-columns:1fr 1fr;gap:15px;padding:22px}.site-footer .footer-mark{grid-column:1/-1;grid-row:auto}.site-footer p{grid-column:1/-1;grid-row:auto}.site-footer>a:not(.wordmark){grid-column:auto;text-align:left}.site-footer .admin-footer-link{grid-column:auto;text-align:right}.site-footer>span{grid-column:1/-1;grid-row:auto;text-align:left;white-space:normal;border-top:1px solid rgba(238,230,211,.18);padding-top:12px}}


/* Retrato interativo: giro completo ao passar o mouse ou tocar na foto */
@keyframes gilmarPortraitFullTurn {
  0% { transform: perspective(1000px) rotateY(0deg) rotateZ(0deg) scale(1); }
  35% { transform: perspective(1000px) rotateY(180deg) rotateZ(-2deg) scale(1.035); }
  70% { transform: perspective(1000px) rotateY(300deg) rotateZ(1deg) scale(1.02); }
  100% { transform: perspective(1000px) rotateY(360deg) rotateZ(0deg) scale(1); }
}
.about-portrait-photo {
  cursor: pointer;
  transform-style: preserve-3d;
  backface-visibility: visible;
  will-change: transform;
}
@media (hover: hover) and (pointer: fine) {
  .about-portrait:hover .about-portrait-photo {
    animation: gilmarPortraitFullTurn 1.15s cubic-bezier(.2,.72,.25,1) both;
    box-shadow: 18px 20px 0 rgba(192,146,77,.18);
  }
}
.about-portrait-photo.is-spinning {
  animation: gilmarPortraitFullTurn 1.15s cubic-bezier(.2,.72,.25,1) both;
}
@media (prefers-reduced-motion: reduce) {
  .about-portrait:hover .about-portrait-photo,
  .about-portrait-photo.is-spinning { animation: none !important; transform: none !important; }
}

/* Ajuste da assinatura principal: nome e profissão com o mesmo peso visual */
.site-header .wordmark-full {
  display: inline-flex;
  align-items: baseline;
  gap: .28em;
  font: 400 18px "Coolvetica", "Space Grotesk", sans-serif;
  letter-spacing: .055em;
  white-space: nowrap;
}
.site-header .wordmark-full span {
  font: inherit;
  letter-spacing: inherit;
  margin-left: 0;
  color: var(--terracotta);
}
@media (max-width: 850px) {
  .site-header .wordmark-full { font-size: 16px; letter-spacing: .035em; }
}
@media (max-width: 650px) {
  .site-header .wordmark-full { font-size: 14px; letter-spacing: .025em; gap: .22em; }
}


/* NOVA DIREÇÃO EDITORIAL — composição inspirada na referência enviada por Gilmar */
:root{--editorial-black:#101010;--editorial-gray:#bdbdbd;--editorial-white:#f2ead9}
html{scroll-padding-top:24px}
body{background:linear-gradient(90deg,#4b4b4b 0 50%,#c5c5c5 50% 100%);color:var(--editorial-white)}
.site-header{
  width:min(1450px,calc(100% - 9vw));height:82px;margin:8vh auto 0;padding:0 clamp(24px,4.8vw,70px);
  background:#151515;color:var(--editorial-white);border:0;border-bottom:1px solid rgba(242,234,217,.08);
  box-shadow:0 -12px 35px rgba(0,0,0,.08);backdrop-filter:none;position:relative;top:auto
}
.site-header .wordmark-full{font-family:var(--body);font-weight:600;font-size:17px;letter-spacing:.025em;gap:.25em}
.site-header .wordmark-full span{font-family:var(--body);font-size:inherit;font-weight:600;letter-spacing:.025em;color:var(--terracotta)}
.main-nav{gap:clamp(18px,3vw,42px);font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.main-nav a{color:rgba(242,234,217,.88)}.main-nav a:hover{color:#d98c4a}
.nav-contact{border:1px solid rgba(168,71,46,.8);border-radius:0;padding:12px 15px}
.nav-contact span{color:#d98c4a}
.hero.section-wrap{
  width:min(1450px,calc(100% - 9vw));max-width:none;margin:0 auto;min-height:0;height:clamp(510px,66vh,650px);
  display:block;padding:0;position:relative;isolation:isolate;overflow:hidden;border-radius:0;background:var(--editorial-black);color:var(--editorial-white);
  box-shadow:0 28px 70px rgba(0,0,0,.22)
}
.hero-photo{inset:0 auto 0 0;width:70%;z-index:-2;overflow:hidden;background:#111}
.hero-photo img{inset:0;width:100%;height:100%;object-fit:cover;object-position:46% center;opacity:1;transform:none!important;filter:saturate(.94) contrast(1.025)}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(16,16,16,.02) 0%,rgba(16,16,16,.12) 32%,rgba(16,16,16,.76) 49%,#101010 65%,#101010 100%)}
.hero .hero-sky,.hero .hero-art,.hero .hero-visual,.hero-line-art{display:none!important}
.hero-copy{position:absolute;left:49%;right:6%;top:50%;width:auto;max-width:660px;padding:0;transform:translateY(-52%);z-index:2}
.hero .eyebrow{font-size:10px;letter-spacing:.12em;color:#d58a4b;margin:0 0 15px;gap:0}
.hero .eyebrow-dot{display:none}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(43px,5.4vw,82px);line-height:.86;letter-spacing:-.045em;text-transform:uppercase;color:var(--editorial-white);margin:0 0 17px;max-width:100%;text-shadow:none;animation:none;overflow-wrap:normal}
.hero h1 span:first-child{color:var(--editorial-white)}
.hero h1 .period{color:#d58a4b}
.hero-intro{font-size:12px;line-height:1.6;letter-spacing:.015em;color:rgba(242,234,217,.76);max-width:300px;margin:0 0 22px}
.hero-actions{margin:0;gap:0}.hero-actions .text-link{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--editorial-white);border-bottom:1px solid rgba(213,138,75,.7);padding-bottom:7px}
.intro-strip{
  width:min(1450px,calc(100% - 9vw));min-height:112px;margin:0 auto 8vh;padding:22px clamp(24px,4.8vw,70px);
  background:rgba(28,28,28,.97);color:var(--editorial-white);border-top:1px solid rgba(242,234,217,.08);
  display:flex;justify-content:space-between;align-items:center;gap:25px
}
.strip-copy p{font-size:9px;line-height:1.4;letter-spacing:.1em;font-weight:600;margin:0 0 8px;color:var(--editorial-white)}
.strip-copy small{display:block;font-size:10px;line-height:1.5;color:rgba(242,234,217,.58);letter-spacing:.02em}
.strip-scroll{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#d98c4a;color:#171717;font-size:21px;flex:0 0 auto;transition:transform .25s,background .25s}
.strip-scroll:hover{transform:translateY(3px);background:#e6a265}
/* Conteúdo após a capa permanece claro e fácil de percorrer. */
main{color:var(--navy)}
.about,.projects,.illustrations,.process,.tools-band,.contact{color:var(--navy)}
.projects{padding-top:100px}
@media(min-width:1500px){.hero h1{font-size:clamp(70px,5vw,84px)}}
@media(max-width:850px){
 .site-header,.hero.section-wrap,.intro-strip{width:calc(100% - 32px)}
 .site-header{margin-top:24px;padding:0 22px;height:72px}
 .main-nav{gap:15px}.main-nav>a:not(.nav-contact){display:none}.main-nav .nav-contact{display:inline-flex;font-size:9px}
 .hero.section-wrap{height:clamp(540px,72vh,650px)}
 .hero-photo{width:82%;opacity:1}.hero-photo img{object-position:44% center}
 .hero:before{background:linear-gradient(90deg,rgba(16,16,16,.05) 0%,rgba(16,16,16,.22) 30%,rgba(16,16,16,.8) 54%,#101010 78%,#101010 100%)}
 .hero-copy{left:43%;right:5%;top:48%;transform:translateY(-50%)}
 .hero h1{font-size:clamp(39px,6.3vw,58px)}
 .intro-strip{margin-bottom:35px;min-height:95px}
}
@media(max-width:560px){
 body{background:#4b4b4b}
 .site-header,.hero.section-wrap,.intro-strip{width:calc(100% - 20px)}
 .site-header{margin-top:18px;padding:0 16px;height:68px}.site-header .wordmark-full{font-size:12px;letter-spacing:0;gap:.22em}.site-header .wordmark-full span{font-size:12px;letter-spacing:0}
 .main-nav .nav-contact{padding:10px 9px;font-size:8px;letter-spacing:.04em}.nav-contact span{margin-left:4px}
 .hero.section-wrap{height:600px}
 .hero-photo{inset:0;width:100%;height:62%;}
 .hero-photo img{object-position:35% 28%;}
 .hero:before{background:linear-gradient(180deg,rgba(16,16,16,.05) 0%,rgba(16,16,16,.10) 28%,#101010 61%,#101010 100%)}
 .hero-copy{left:7%;right:7%;top:auto;bottom:74px;transform:none;max-width:none}
 .hero .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:12px}
 .hero h1{font-size:clamp(37px,10vw,52px);line-height:.9;letter-spacing:-.04em;margin-bottom:14px}
 .hero-intro{font-size:11px;max-width:290px;margin-bottom:17px}
 .hero-actions .text-link{font-size:9px}
 .intro-strip{padding:19px 18px;min-height:82px;margin-bottom:28px}.strip-copy p{font-size:8px}.strip-copy small{font-size:9px;max-width:250px}.strip-scroll{width:38px;height:38px}
}
@media(prefers-reduced-motion:reduce){.strip-scroll{transition:none}}


/* Ajuste solicitado: capa editorial em tela cheia, sem margens externas */
:root{--editorial-black:#101010;--editorial-white:#f2ead9}
html,body{width:100%;min-height:100%;margin:0}
body{background:#101010;overflow-x:hidden}
.site-header{
  width:100%;max-width:none;height:clamp(72px,10vh,96px);
  margin:0;padding:0 clamp(24px,6.3vw,100px);
  border:0;border-bottom:1px solid rgba(242,234,217,.09);
  border-radius:0;background:#080f11;backdrop-filter:none
}
.hero.section-wrap{
  width:100%;max-width:none;margin:0;border-radius:0;box-shadow:none;
  height:clamp(520px,74vh,780px);min-height:0
}
.hero-photo{width:70%;left:0;top:0;bottom:0}
.hero-copy{left:49%;right:6%;max-width:720px}
.intro-strip{
  width:100%;max-width:none;margin:0;padding-left:clamp(24px,6.3vw,100px);
  padding-right:clamp(24px,6.3vw,100px);min-height:100px
}
@media(min-height:850px){
 .hero.section-wrap{height:calc(100svh - clamp(72px,10vh,96px) - 100px);min-height:620px;max-height:850px}
}
@media(max-width:850px){
 .site-header{width:100%;margin:0;padding:0 24px;height:72px}
 .hero.section-wrap{width:100%;height:clamp(540px,74svh,720px)}
 .intro-strip{width:100%;margin:0;padding-left:24px;padding-right:24px}
}
@media(max-width:560px){
 .site-header{width:100%;margin:0;padding:0 16px;height:68px}
 .hero.section-wrap{width:100%;height:600px}
 .hero-photo{width:100%;height:62%;inset:0}
 .intro-strip{width:100%;margin:0;padding:19px 18px;min-height:82px}
}


/* Tipografia de títulos: Coolvetica em todo o portfólio */
@font-face {
  font-family: "Coolvetica";
  src: url("assets/Coolvetica-Rg.otf") format("opentype");
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
}
:root { --site-display-font: "Coolvetica", Arial, sans-serif; }
.hero h1, h1, h2, h3, .section-heading h2, .about h2, .about-name,
.project-meta h3, .contact h2, .custom-content-section h2,
.art-card-back b, .paper-type, .portrait-placeholder strong {
  font-family: "Coolvetica", Arial, sans-serif !important;
  font-weight: 400;
  letter-spacing: 0.015em;
}
.hero h1 { line-height: 0.96; letter-spacing: 0.005em; }
.section-heading h2, .about h2, .contact h2, .custom-content-section h2 {
  line-height: 1.02; letter-spacing: 0.01em;
}
.project-meta h3 { letter-spacing: 0.01em; }


/* Cabeçalho transparente sobre a capa editorial */
.site-header{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:50;
  background:rgba(8,15,17,.18);
  border-bottom:1px solid rgba(242,234,217,.08);
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
/* A capa começa no topo para que a fotografia fique atrás do cabeçalho. */
.hero.section-wrap{
  margin-top:0;
  padding-top:clamp(72px,10vh,96px);
  height:clamp(592px,84vh,876px);
}
.hero-photo{top:0;}
@media(min-height:850px){
  .hero.section-wrap{
    height:calc(100svh - 100px);
    min-height:650px;
    max-height:900px;
  }
}
@media(max-width:850px){
  .site-header{position:absolute;top:0;left:0;right:0;background:rgba(8,15,17,.22);}
  .hero.section-wrap{height:clamp(612px,84svh,792px);padding-top:72px;}
}
@media(max-width:560px){
  .site-header{position:absolute;top:0;left:0;right:0;background:rgba(8,15,17,.22);}
  .hero.section-wrap{height:668px;padding-top:68px;}
}


/* Ajuste de contraste e harmonia cromática nas seções escuras do portfólio */
:root {
  --editorial-cream: #EEE6D3;
  --editorial-soft: #C9C2B3;
  --editorial-muted: #9A9A91;
  --editorial-line: rgba(238,230,211,.16);
  --editorial-accent: #C0924D;
  --editorial-terracotta: #A8472E;
}
/* A área de projetos mantém o fundo escuro, mas ganha contraste legível. */
main { color: var(--editorial-cream); }
.projects, .illustrations, .process { color: var(--editorial-cream); }
.projects .section-heading h2,
.illustrations .section-heading h2,
.process .section-heading h2,
.custom-content-section h2 { color: var(--editorial-cream); }
.projects .section-heading h2 span,
.illustrations .section-heading h2 span,
.process .section-heading h2 span,
.custom-content-section h2 span { color: var(--editorial-terracotta); }
.projects .section-note,
.illustrations .section-note,
.process .section-note,
.portfolio-disclaimer { color: var(--editorial-soft); }
.project-type { color: #A9AAA2; }
.project-meta h3 { color: var(--editorial-cream); }
.round-arrow { color: var(--editorial-accent); border-color: var(--editorial-line); }
.round-arrow:hover { background: var(--editorial-terracotta); color: var(--editorial-cream); }
.filter-button { color: var(--editorial-soft); border-color: var(--editorial-line); }
.filter-button:hover, .filter-button.active { background: var(--editorial-cream); color: #101010; border-color: var(--editorial-cream); }
.projects .project-card .project-meta,
.illustrations .project-card .project-meta { color: var(--editorial-cream); }
/* Linhas e legendas mais suaves, sem perder leitura sobre o preto. */
.projects .section-heading,
.illustrations .section-heading,
.process .section-heading { border-color: var(--editorial-line); }
.projects .eyebrow, .illustrations .eyebrow, .process .eyebrow { color: var(--editorial-accent); }
.projects .eyebrow-dot, .illustrations .eyebrow-dot, .process .eyebrow-dot { background: var(--editorial-terracotta); }
/* Mantém a seção Sobre clara quando seu próprio fundo é claro. */
.about { color: var(--navy); }
.about .section-note { color: var(--muted); }
/* Legibilidade de textos auxiliares e links no rodapé escuro. */
.site-footer { color: var(--editorial-soft); }
.site-footer p, .site-footer>a:not(.wordmark), .site-footer>span { color: #AAA69B; }
@media (prefers-contrast: more) {
  .project-type, .section-note, .portfolio-disclaimer { color: var(--editorial-cream); }
}

/* Rodapé editorial unificado: alinhamento, contraste e paleta coerente com a capa */
:root{--footer-dark:#080F12;--footer-soft:#B9B8AF;--footer-rule:rgba(238,230,211,.18)}
.tools-band{background:var(--cream)!important;color:var(--navy)!important;grid-template-columns:minmax(190px,1fr) minmax(0,2fr) minmax(210px,1fr);padding-left:clamp(24px,7.2vw,110px)!important;padding-right:clamp(24px,7.2vw,110px)!important;align-items:center!important;}
.tools-band .tools-label{margin:0;line-height:1.5;align-self:center;}
.tools-band .tools-list{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,28px);flex-wrap:wrap;min-width:0;}
.tools-band .tools-list span{line-height:1.5;white-space:nowrap;}
.tools-band p{justify-self:end;text-align:right;margin:0;line-height:1.6;max-width:260px;color:#627A7E;}
.contact.section-wrap,.contact{background:var(--footer-dark)!important;color:var(--cream)!important;}
.contact{padding-left:clamp(24px,7.2vw,110px)!important;padding-right:clamp(24px,7.2vw,110px)!important;}
.contact .eyebrow{color:#C7C4B9;line-height:1.5;}
.contact h2{color:var(--cream)!important;max-width:1000px;line-height:.98;letter-spacing:-.035em;overflow-wrap:normal;}
.contact h2 em{color:var(--terracotta)!important;font-style:normal;}
.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px;}
.contact-bottom p{color:#C0C1BB;max-width:470px;margin:0;line-height:1.75;}
.contact .button-light{background:var(--cream);color:var(--navy);border:1px solid var(--cream);flex-shrink:0;}
.contact .button-light:hover{background:var(--terracotta);border-color:var(--terracotta);color:var(--cream);}
.contact-links{border-top:1px solid var(--footer-rule);margin-top:8px;color:#C0C1BB;align-items:center;}
.contact-links a{color:#C0C1BB;line-height:1.6;}
.contact-links a span{color:var(--mustard);}
.contact-deco{opacity:.22;}
.site-footer{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box;min-height:100px;padding:25px clamp(24px,7.2vw,110px)!important;display:grid!important;grid-template-columns:minmax(190px,1.2fr) minmax(180px,1.3fr) minmax(110px,.8fr) minmax(150px,1fr) auto!important;align-items:center!important;gap:clamp(14px,2vw,28px)!important;background:var(--footer-dark)!important;color:var(--cream)!important;border-radius:0!important;border-top:1px solid var(--footer-rule)!important;}
.site-footer .footer-mark{margin:0;white-space:nowrap;line-height:1.4;}
.site-footer p,.site-footer>a:not(.wordmark),.site-footer>span{color:var(--footer-soft)!important;font-size:11px;line-height:1.6;text-align:left;margin:0;min-width:0;}
.site-footer p{max-width:260px;}
.site-footer>span{text-align:right;white-space:nowrap;}
.site-footer .admin-footer-link{text-align:left;}
.site-footer .footer-mark.wordmark-full span{color:var(--terracotta)!important;}
@media(max-width:1050px){.tools-band{grid-template-columns:1fr!important;justify-items:start;gap:16px!important;}.tools-band .tools-list{justify-content:flex-start;}.tools-band p{justify-self:start;text-align:left;max-width:none;}.site-footer{grid-template-columns:1fr 1fr!important;gap:16px 22px!important;}.site-footer .footer-mark{grid-column:1!important;}.site-footer p{grid-column:1/-1!important;max-width:none;}.site-footer>a:not(.wordmark){grid-column:2!important;text-align:right;}.site-footer .admin-footer-link{grid-row:auto!important;}.site-footer>span{grid-column:1!important;text-align:left;white-space:normal;}}
@media(max-width:600px){.contact-bottom{align-items:flex-start;flex-direction:column;gap:22px;}.contact h2{font-size:clamp(38px,10.5vw,58px);}.contact-deco{opacity:.12;}.contact-links{gap:14px 22px;}.site-footer{grid-template-columns:1fr 1fr!important;padding:22px!important;gap:15px!important;}.site-footer .footer-mark,.site-footer p{grid-column:1/-1!important;}.site-footer>a:not(.wordmark){grid-column:auto!important;text-align:left;}.site-footer .admin-footer-link{grid-column:2!important;text-align:right!important;}.site-footer>span{grid-column:1/-1!important;border-top:1px solid var(--footer-rule);padding-top:12px;text-align:left!important;}}


/* Finalização compacta: remove faixa de ferramentas e decoração desnecessária */
.tools-band{display:none!important;}
.contact-deco{display:none!important;}
.contact{padding-top:clamp(34px,4vw,54px)!important;padding-bottom:22px!important;}
.contact h2{font-size:clamp(42px,5.2vw,72px)!important;line-height:.98!important;margin:20px 0 20px!important;max-width:980px!important;}
.contact-bottom{padding-bottom:22px!important;gap:24px!important;}
.contact-bottom p{line-height:1.6!important;}
.contact-links{margin-top:0!important;padding-top:14px!important;gap:12px 24px!important;}
.site-footer{min-height:76px!important;padding-top:16px!important;padding-bottom:16px!important;gap:clamp(10px,1.6vw,20px)!important;}
@media(max-width:1050px){.contact{padding-top:34px!important;padding-bottom:20px!important;}.contact h2{font-size:clamp(40px,7vw,64px)!important;margin:18px 0!important;}.contact-bottom{padding-bottom:20px!important;}.site-footer{min-height:0!important;padding-top:18px!important;padding-bottom:18px!important;}}
@media(max-width:600px){.contact{padding:32px 22px 20px!important;}.contact h2{font-size:clamp(36px,9.5vw,52px)!important;line-height:1!important;margin:18px 0!important;}.contact-bottom{gap:16px!important;padding-bottom:18px!important;}.contact-links{padding-top:12px!important;}.site-footer{padding:18px 22px!important;gap:12px!important;}}

/* Capa atualizada: fotografia colorida em escala maior, preenchendo a lateral */
.hero-photo{left:0!important;right:auto!important;top:0!important;bottom:0!important;width:63%!important;height:100%!important;opacity:1!important;z-index:-2!important;background:#12313a!important}
.hero-photo img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:39% center!important;opacity:1!important;filter:saturate(1.04) contrast(1.015)!important;transform:none!important}
.hero:before{background:linear-gradient(90deg,rgba(8,19,22,.02) 0%,rgba(8,19,22,.02) 36%,rgba(16,16,16,.48) 48%,rgba(16,16,16,.93) 61%,#101010 72%,#101010 100%)!important}
.hero-copy{left:50%!important;right:5.5%!important;max-width:720px!important}
@media(max-width:850px){
 .hero-photo{width:74%!important;opacity:1!important}
 .hero-photo img{object-position:39% center!important}
 .hero:before{background:linear-gradient(90deg,rgba(8,19,22,.02) 0%,rgba(8,19,22,.15) 34%,rgba(16,16,16,.7) 53%,#101010 76%,#101010 100%)!important}
 .hero-copy{left:44%!important;right:4.5%!important}
}
@media(max-width:560px){
 .hero-photo{left:0!important;top:0!important;bottom:auto!important;width:100%!important;height:65%!important;opacity:1!important}
 .hero-photo img{object-position:39% 34%!important}
 .hero:before{background:linear-gradient(180deg,rgba(8,19,22,0) 0%,rgba(16,16,16,.03) 27%,rgba(16,16,16,.38) 44%,#101010 65%,#101010 100%)!important}
 .hero-copy{left:7%!important;right:7%!important;top:auto!important;bottom:74px!important;transform:none!important}
}


/* Ajuste final solicitado: a fotografia panorâmica preenche toda a capa, inclusive atrás do texto */
.hero.section-wrap{
  width:100%!important;max-width:none!important;margin:0!important;border-radius:0!important;
  height:clamp(560px, calc(100svh - 170px), 820px)!important;min-height:560px!important;
  background:#101010!important;overflow:hidden!important;
}
.hero-photo{
  position:absolute!important;inset:0!important;left:0!important;right:0!important;top:0!important;bottom:0!important;
  width:100%!important;height:100%!important;opacity:1!important;z-index:-2!important;background:#101010!important;
}
.hero-photo img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center 48%!important;opacity:1!important;
  filter:saturate(1.04) contrast(1.02)!important;transform:none!important;
}
.hero:before{
  background:linear-gradient(90deg,rgba(8,15,17,.02) 0%,rgba(8,15,17,.08) 32%,rgba(8,15,17,.32) 51%,rgba(8,15,17,.62) 72%,rgba(8,15,17,.76) 100%)!important;
}
.hero-copy{left:49%!important;right:6%!important;top:50%!important;bottom:auto!important;max-width:720px!important;transform:translateY(-50%)!important}
@media(max-width:850px){
  .hero.section-wrap{height:clamp(600px, calc(100svh - 150px), 780px)!important;min-height:600px!important}
  .hero-photo{width:100%!important;height:100%!important}
  .hero-photo img{object-position:43% center!important}
  .hero:before{background:linear-gradient(90deg,rgba(8,15,17,.05) 0%,rgba(8,15,17,.18) 30%,rgba(8,15,17,.54) 57%,rgba(8,15,17,.78) 100%)!important}
  .hero-copy{left:43%!important;right:5%!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
}
@media(max-width:560px){
  .hero.section-wrap{height:calc(100svh - 110px)!important;min-height:650px!important;max-height:850px!important}
  .hero-photo{inset:0!important;width:100%!important;height:100%!important}
  .hero-photo img{object-position:40% center!important}
  .hero:before{background:linear-gradient(180deg,rgba(8,15,17,.03) 0%,rgba(8,15,17,.16) 28%,rgba(8,15,17,.58) 51%,rgba(8,15,17,.91) 100%)!important}
  .hero-copy{left:7%!important;right:7%!important;top:auto!important;bottom:42px!important;transform:none!important}
}


/* Ajuste de composição da capa: alinhamento consistente do bloco tipográfico */
.hero.section-wrap{
  position:relative!important;
  display:block!important;
}
.hero .hero-copy{
  position:absolute!important;
  left:51.2%!important;
  right:6.2%!important;
  top:50%!important;
  bottom:auto!important;
  width:auto!important;
  max-width:760px!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
.hero .hero-copy .eyebrow{
  margin:0 0 22px!important;
  padding:0!important;
  justify-content:flex-start!important;
  text-align:left!important;
  line-height:1.4!important;
}
.hero .hero-copy h1{
  width:100%!important;
  max-width:760px!important;
  margin:0!important;
  padding:0!important;
  font-family:var(--site-display-font, Coolvetica, Arial, sans-serif)!important;
  font-size:clamp(48px,5.15vw,78px)!important;
  font-weight:400!important;
  line-height:.98!important;
  letter-spacing:-.025em!important;
  text-align:left!important;
  text-wrap:balance;
}
.hero .hero-copy h1 span{display:inline!important;}
.hero .hero-copy .hero-intro{
  max-width:390px!important;
  margin:22px 0 0!important;
  padding:0!important;
  font-size:14px!important;
  line-height:1.65!important;
  text-align:left!important;
}
.hero .hero-copy .hero-actions{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  margin:22px 0 0!important;
  padding:0!important;
}
.hero .hero-copy .text-link{margin:0!important;}
@media(max-width:1050px){
  .hero .hero-copy{left:49%!important;right:5%!important;max-width:650px!important;}
  .hero .hero-copy h1{font-size:clamp(44px,5.6vw,64px)!important;line-height:1!important;}
}
@media(max-width:700px){
  .hero .hero-copy{
    left:7%!important;right:7%!important;top:auto!important;bottom:40px!important;
    width:auto!important;max-width:none!important;transform:none!important;
  }
  .hero .hero-copy .eyebrow{margin-bottom:15px!important;}
  .hero .hero-copy h1{font-size:clamp(42px,9.5vw,60px)!important;line-height:.98!important;letter-spacing:-.02em!important;}
  .hero .hero-copy .hero-intro{max-width:360px!important;margin-top:16px!important;font-size:13px!important;}
  .hero .hero-copy .hero-actions{margin-top:17px!important;}
}

/* Ajuste solicitado: texto da capa alinhado à direita */
.hero .hero-copy{ text-align:right!important; }
.hero .hero-copy .eyebrow{ justify-content:flex-end!important; text-align:right!important; }
.hero .hero-copy h1{ text-align:right!important; margin-left:auto!important; margin-right:0!important; }
.hero .hero-copy .hero-intro{ text-align:right!important; margin-left:auto!important; margin-right:0!important; }
.hero .hero-copy .hero-actions{ justify-content:flex-end!important; }
@media(max-width:700px){
  .hero .hero-copy{ text-align:right!important; }
  .hero .hero-copy .hero-intro{ margin-left:auto!important; margin-right:0!important; }
  .hero .hero-copy .hero-actions{ justify-content:flex-end!important; }
}

/* Personalização independente das seções pelo administrador */
#inicio{background-color:var(--hero-bg,#0E2D3A)}
#inicio .hero-copy h1{font-family:var(--hero-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));font-size:calc(clamp(3.4rem,7.2vw,7.5rem) * var(--site-title-scale,1) * var(--hero-title-scale,1));color:var(--hero-title-color,#EEE6D3)}
#inicio .hero-copy .eyebrow,#inicio .hero-copy .eyebrow-dot{color:var(--hero-accent-color,#C0924D)}
#inicio .hero-intro{color:var(--hero-text-color,#D8D2C4)}
#inicio .hero-actions a{color:var(--hero-title-color,#EEE6D3);border-color:var(--hero-accent-color,#C0924D)}
#projetos{background-color:var(--projects-bg,#0A1012);color:var(--projects-text-color,#B8B5AA)}
#projetos .section-heading h2,#projetos h2,#projetos .project-meta h3{font-family:var(--projects-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));color:var(--projects-title-color,#EEE6D3);font-size:calc(1em * var(--projects-title-scale,1))}
#projetos .section-note,#projetos p,#projetos .project-meta p{color:var(--projects-text-color,#B8B5AA)}
#projetos .project-meta h3 span,#projetos a:hover,#projetos .project-number{color:var(--projects-accent-color,#C0924D)}
#ilustracoes{background-color:var(--illustrations-bg,#0A1012);color:var(--illustrations-text-color,#B8B5AA)}
#ilustracoes h2,#ilustracoes .section-heading h2,#ilustracoes .art-card h3{font-family:var(--illustrations-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));color:var(--illustrations-title-color,#EEE6D3);font-size:calc(1em * var(--illustrations-title-scale,1))}
#ilustracoes p,#ilustracoes .section-note{color:var(--illustrations-text-color,#B8B5AA)}
#ilustracoes .accent,#ilustracoes a:hover{color:var(--illustrations-accent-color,#A8472E)}
#sobre{background-color:var(--about-bg,#EEE6D3);color:var(--about-text-color,#526367)}
#sobre h2,#sobre .about-name{font-family:var(--about-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));color:var(--about-title-color,#0E2D3A);font-size:calc(1em * var(--about-title-scale,1))}
#sobre p,#sobre li,#sobre .about-lead{color:var(--about-text-color,#526367)}
#sobre .about-name span,#sobre a:hover,#sobre .accent{color:var(--about-accent-color,#A8472E)}
#processo{background-color:var(--process-bg,#0E2D3A);color:var(--process-text-color,#C8D1CF)}
#processo h2,#processo h3,#processo .section-heading h2{font-family:var(--process-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));color:var(--process-title-color,#EEE6D3);font-size:calc(1em * var(--process-title-scale,1))}
#processo p,#processo li{color:var(--process-text-color,#C8D1CF)}
#processo .accent,#processo a:hover{color:var(--process-accent-color,#C0924D)}
#contato{background-color:var(--contact-bg,#080F11);color:var(--contact-text-color,#C8C5BC)}
#contato h2,#contato h3,#contato .section-heading h2{font-family:var(--contact-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));color:var(--contact-title-color,#EEE6D3);font-size:calc(1em * var(--contact-title-scale,1))}
#contato p,#contato .contact-bottom>p{color:var(--contact-text-color,#C8C5BC)}
#contato a:hover,#contato .accent{color:var(--contact-accent-color,#C0924D)}
.intro-strip{background-color:var(--intro-bg,#1B1B19);color:var(--intro-text-color,#AFA99D)}
.intro-strip p{font-family:var(--intro-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));font-size:calc(1em * var(--intro-title-scale,1));color:var(--intro-title-color,#EEE6D3)}
.intro-strip em,.intro-strip strong{color:var(--intro-accent-color,#C0924D)}
.site-footer{background-color:var(--footer-bg-section,#080F11);color:var(--footer-text-color,#B8B5AA);font-family:var(--footer-font-family,var(--site-display-font,Coolvetica,Arial,sans-serif));font-size:calc(1em * var(--footer-title-scale,1))}
.site-footer a,.site-footer p,.site-footer span{color:var(--footer-text-color,#B8B5AA)}
.site-footer .wordmark-full{color:var(--footer-title-color,#EEE6D3)}
.site-footer .wordmark-full span,.site-footer a:hover{color:var(--footer-accent-color,#C0924D)}
/* Escalas tipográficas específicas sem substituir o tamanho-base de cada componente */
#projetos .section-heading h2,#projetos h2{font-size:calc(clamp(2.4rem,5vw,5rem) * var(--projects-title-scale,1))}
#projetos .project-meta h3{font-size:clamp(1rem,1.5vw,1.35rem)}
#ilustracoes .section-heading h2,#ilustracoes h2{font-size:calc(clamp(2.4rem,5vw,5rem) * var(--illustrations-title-scale,1))}
#ilustracoes .art-card h3{font-size:clamp(1rem,1.5vw,1.35rem)}
#sobre .about-name,#sobre h2{font-size:calc(clamp(2.1rem,4vw,3.8rem) * var(--about-title-scale,1))}
#processo .section-heading h2,#processo h2{font-size:calc(clamp(2.2rem,4.5vw,4.5rem) * var(--process-title-scale,1))}
#processo h3{font-size:clamp(1rem,1.7vw,1.5rem)}
#contato .section-heading h2,#contato h2{font-size:calc(clamp(2.2rem,4.5vw,4.8rem) * var(--contact-title-scale,1))}

/* Cores individuais editáveis no painel administrativo */
.site-header .wordmark,
.site-header .wordmark-full { color: var(--wordmark-name-color, #EEE6D3) !important; }
.site-header .wordmark span:first-child { color: var(--wordmark-designer-color, var(--terracotta, #A8472E)) !important; }
#inicio .hero-copy .eyebrow,
#inicio .hero-copy .eyebrow-dot {
  color: var(--hero-eyebrow-color, var(--hero-accent-color, #C0924D)) !important;
  background-color: var(--hero-eyebrow-color, var(--hero-accent-color, #C0924D)) !important;
}

/* Correção: a cor de destaque da etiqueta da capa não deve virar uma faixa horizontal */
#inicio .hero-copy .eyebrow {
  background: transparent !important;
  background-color: transparent !important;
}
#inicio .hero-copy .eyebrow-dot {
  background-color: var(--hero-eyebrow-color, var(--hero-accent-color, #C0924D)) !important;
}


/* Fundo global unificado: uma única cor em todas as seções principais */
:root { --site-background: #101010; }
html, body, main,
#inicio, #projetos, #ilustracoes, #sobre, #processo, #contato,
.intro-strip, .tools-band, .contact.section-wrap, .contact,
.site-footer {
  background-color: var(--site-background) !important;
}
body { background: var(--site-background) !important; }
/* Preserva a fotografia da capa e as artes/cards dos projetos; unifica apenas o fundo das seções. */
#inicio { background-color: var(--site-background) !important; }
#sobre, .tools-band { color: #EEE6D3 !important; }
#sobre p, #sobre li, #sobre .about-lead,
.tools-band p, .tools-band span, .tools-band a { color: #C8C5BC; }
.site-footer { border-top-color: rgba(238,230,211,.14) !important; }

/* Tipografia branca global no site público, mantendo o fundo e as imagens intactos. */
html body#white-text-site .site-header *,
html body#white-text-site .site-footer *,
html body#white-text-site .intro-strip *,
html body#white-text-site #inicio *,
html body#white-text-site #projetos *,
html body#white-text-site #ilustracoes *,
html body#white-text-site #sobre *,
html body#white-text-site #processo *,
html body#white-text-site #contato * {
  color: #FFFFFF !important;
}
/* Mantém os fundos e os elementos de imagem; só uniformiza a cor da tipografia. */


/* Ajustes solicitados: música no cabeçalho e CTA de contato em terracota. */
.site-header .site-music-toggle{position:static;right:auto;bottom:auto;z-index:auto;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;margin-left:2px;padding:10px 13px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:transparent;color:#fff!important;box-shadow:none;font:inherit;font-size:11px;letter-spacing:.035em;white-space:nowrap;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.site-header .site-music-toggle:hover,.site-header .site-music-toggle.is-playing{background:var(--terracotta,#A8472E);border-color:var(--terracotta,#A8472E);color:#fff!important;}
.site-header .site-music-toggle>span:first-child{font-size:16px;line-height:1;color:#fff!important;}
.site-header .site-music-toggle .site-music-label{color:#fff!important;}
#contato .contact-bottom .button-light{background:var(--terracotta,#A8472E)!important;border-color:var(--terracotta,#A8472E)!important;color:#fff!important;}
#contato .contact-bottom .button-light span{color:#fff!important;}
#contato .contact-bottom .button-light:hover{background:#923b27!important;border-color:#923b27!important;color:#fff!important;}
@media(max-width:1050px){.site-header .main-nav{gap:clamp(8px,1.6vw,18px)}.site-header .site-music-toggle{padding:9px 10px;font-size:10px;}}
@media(max-width:650px){.site-header .site-music-toggle{padding:8px 9px;gap:5px;font-size:10px;margin-left:0}.site-header .site-music-toggle .site-music-label{max-width:70px;overflow:hidden;text-overflow:ellipsis;}}

/* Ajuste do wordmark no rodapé: nome e DESIGNER com a mesma escala tipográfica */
.site-footer .footer-mark,
.site-footer .footer-mark span {
  font-size: 16px !important;
  font-family: var(--display) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
  vertical-align: baseline;
}
.site-footer .footer-mark {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  white-space: nowrap;
}
.site-footer .footer-mark span {
  color: inherit !important;
}
@media (max-width: 600px) {
  .site-footer .footer-mark,
  .site-footer .footer-mark span { font-size: 14px !important; }
  .site-footer .footer-mark { gap: 6px; }
}
