/* Identidade do portfólio: azul-marinho, azul, ciano e branco. */
/* Refinement: readable branding, deliberate mobile composition, tactile interactions. */
:root{--blue:#193c78;--yellow:#00bce4;--black:#071b3d;--paper:#f5f7fa}
body{background:var(--paper)}
.hero{background:#093b79}
.hero-shade{background:linear-gradient(180deg,#061b4265,transparent 35%,#061b42e6)}
.story,.gallery{background:#e9eef5}
.outline-number{-webkit-text-stroke-color:#193c78}
.story-chapters article,.history,.event,.opportunity-grid article,.offer-details details{border-color:#bcc9da}
.story p,.season p,.broadcast p,.opportunities p,.bio .muted,.history p,.future-title p,.event p{color:#54637a}
.season,.project{background:linear-gradient(135deg,#087dc0 0%,#193c78 55%,#061b46 100%)}
.season p,.season .future-title p{color:#e2efff}
.track{background:#071b3d}
.event:hover{background:#e5edf7}
.media{background:#071b3d}
.media-lead,.media-grid article>span,.broadcast p{color:#bdcce2}
.partners{background:linear-gradient(125deg,#087fc3,#193c78 65%,#071b3d);color:white}
.partners em{color:#00c8ef}
.partner-bottom span{border-color:#ffffff40}
.ticker{background:#00bce4;color:#071b3d}
.button,.project-image>span{background:#00bce4;color:#071b3d}
.button:hover{background:#64dcf4;color:#071b3d}
.round:hover{background:#00bce4;color:#071b3d}
.partners p{color:#e2efff}
a:focus-visible,button:focus-visible,.gallery-rail:focus-visible{outline-color:#00a9d6}
/* Cinematic hero: isolated portrait, typography and light on separate planes. */
.hero{isolation:isolate;background:radial-gradient(ellipse at 50% 48%,#146cb5 0%,#123d7b 35%,#06182f 76%);height:110svh;min-height:780px;max-height:1200px;perspective:1200px}
.hero-photo{opacity:1;object-fit:contain;object-position:center bottom;left:50%;bottom:0;top:auto;width:min(61vw,850px);height:88%;z-index:3;transform:translateX(-50%) translate3d(var(--mx,0px),var(--my,0px),0) rotateY(var(--ry,0deg)) scale(var(--zoom,1));transform-origin:center 70%;filter:drop-shadow(0 15px 50px #00112f90);mask-image:linear-gradient(#000 80%,transparent 100%);transition:transform .3s ease-out;pointer-events:none;animation:portrait-enter 1.6s ease both}
.hero-shade{z-index:4;background:linear-gradient(0deg,#06182f 0%,transparent 25%);pointer-events:none}
.hero:before{content:'';position:absolute;inset:15% 18% 10%;border:1px solid #00bce430;border-radius:50%;box-shadow:0 0 110px #00bce422,inset 0 0 100px #00bce411;transform:rotate(-25deg);z-index:0}
.hero:after{content:'';position:absolute;left:10%;right:10%;top:48%;height:1px;background:linear-gradient(90deg,transparent,#56dfff80,transparent);box-shadow:0 0 80px 16px #00bce420;z-index:1;pointer-events:none;animation:light-breathe 5s ease-in-out infinite alternate}
.hero h1{top:26%;bottom:auto;left:3%;width:94%;font-size:17.8vw;line-height:.82;text-align:center;z-index:2;letter-spacing:-.04em;transform:translateY(var(--type-shift,0px));animation:hero-in 1.2s both}
.hero h1>span:nth-child(2){color:#00bce4}
.hero i{position:absolute;right:0;top:-28%;font-size:38px;border:0;color:white;font-style:italic;letter-spacing:-2px}
.hero-top{z-index:5;top:125px}.hero-bottom{z-index:5;bottom:45px;align-items:center}.hero-bottom p{font-size:16px}.hero-bottom>span{max-width:190px;line-height:1.8;text-align:right}.hero-bottom .round{width:auto;height:auto;border-radius:35px;padding:18px 28px;font-size:12px;gap:30px;display:flex;background:#09265380;backdrop-filter:blur(10px)}.hero-bottom .round:hover{transform:translateY(-4px)}.side-label{z-index:5;color:#a2c2e5;top:35%}
@keyframes portrait-enter{from{opacity:0;filter:brightness(.25) drop-shadow(0 15px 50px #00112f90)}to{opacity:1;filter:brightness(1) drop-shadow(0 15px 50px #00112f90)}}
@keyframes light-breathe{to{opacity:.3;transform:translateY(-45px)}}
@media(min-width:1600px){.hero h1{font-size:285px}}
@media(max-width:760px){.hero{height:100svh;min-height:700px;max-height:1000px}.hero-photo{width:110%;height:76%;bottom:8%;max-width:none}.hero h1{top:24%;font-size:18.1vw;line-height:.87}.hero i{font-size:26px;top:-65%;right:2%}.hero-top{top:100px;font-size:9px}.hero-bottom{bottom:28px;align-items:start;gap:18px;flex-direction:column}.hero-bottom p{font-size:13px}.hero-bottom .round{align-self:flex-end;padding:14px 18px;margin-top:-25px}.hero:before{inset:20% 3% 20%}.side-label{right:12px;font-size:8px}.hero-shade{background:linear-gradient(0deg,#06182f 2%,transparent 35%)}}
@media(prefers-reduced-motion:reduce){.hero-photo,.hero h1{transform:none!important;animation:none!important}.hero-photo{left:0;width:100%}.hero:after{animation:none!important}}
.brand{display:block;width:210px;height:58px;overflow:hidden;flex-shrink:0;letter-spacing:0}.brand img{width:100%;height:100%;object-fit:contain;transform:scale(1.12);transition:filter .3s}.brand:hover img{filter:drop-shadow(0 0 8px #00bce488)}
.hero{height:100svh;min-height:680px}.hero i{display:none}.hero-top{top:120px}.hero-photo{height:87%;bottom:1%}.hero-bottom{bottom:32px}.hero h1{top:29%}
header nav a{position:relative;padding:12px 0}header nav a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:#00bce4;transform:scaleX(0);transform-origin:right;transition:transform .35s}header nav a:hover:after,header nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}
.contact,.button,.hero-bottom .round,.gallery-controls button{transition:translate .25s,box-shadow .3s,background .3s,color .3s;translate:var(--hover-x,0px) var(--hover-y,0px)}
@media(hover:hover){.contact:hover{background:#00bce41a;box-shadow:0 0 0 1px #00bce480,inset 0 0 25px #00bce412}.button:hover{box-shadow:0 10px 30px #00bce430}.gallery-controls button:hover{background:#193c78;color:white}.opportunity-grid article:hover{background:radial-gradient(240px circle at var(--light-x,50%) var(--light-y,50%),#00bce417,transparent);border-color:#00bce4}.project-copy:hover{background:radial-gradient(260px circle at var(--light-x,50%) var(--light-y,50%),#00bce425,transparent)}.text-link:hover{color:#008db6;border-color:#00bce4}.footer-cta span{transition:transform .4s}.footer-cta:hover span{transform:translate(10px,-10px)}.offer-details summary:hover{color:#008db6}}
.opportunity-grid article{padding:25px 14px 20px;transition:background .3s,border-color .3s}.gallery figure img{border-radius:4px}.contact,.round,.button{min-height:44px}.footer-bottom .brand{width:210px;height:65px}
@media(max-width:760px){header{padding:16px 5%;gap:12px}header .brand{width:164px;height:48px}.contact{font-size:10px;padding:12px 15px;display:flex;align-items:center;white-space:nowrap}.contact span{margin-left:12px}.hero{height:100svh;min-height:650px;max-height:none}.hero-top{top:91px;left:6%;right:6%}.hero h1{top:135px;font-size:18.2vw;line-height:.9;left:3%;width:94%;z-index:4;text-shadow:0 3px 30px #06182f60}.hero-photo{height:67%;width:100%;bottom:82px;z-index:3;object-position:center bottom;mask-image:linear-gradient(#000 78%,transparent 100%)}.hero:before{inset:28% 5% 15%}.hero-bottom{left:6%;right:6%;bottom:max(24px,env(safe-area-inset-bottom));gap:16px;flex-direction:row;align-items:center}.hero-bottom p{font-size:12px;line-height:1.6;max-width:145px}.hero-bottom .round{margin:0;align-self:center;font-size:10px;padding:15px 14px;background:#0c3057;border-color:#00bce480;max-width:175px;text-align:center}.side-label{top:45%;right:10px;font-size:7px;letter-spacing:.13em}.hero-shade{z-index:4;background:linear-gradient(0deg,#06182f 0%,transparent 23%)}.hero-top{z-index:6}.hero-bottom{z-index:6}.footer-bottom .brand{width:165px;height:55px}}
@media(max-width:380px){header .brand{width:140px}.contact{font-size:9px;padding:11px}.hero-bottom{gap:10px}.hero-bottom .round{font-size:9px;max-width:155px}.hero h1{top:130px}}
@media(max-height:650px) and (min-width:761px){.hero{min-height:620px}.hero-top{top:100px}.hero h1{font-size:15vw;top:25%}.hero-photo{height:83%}}
@media(prefers-reduced-motion:reduce){.button,.contact,.round,.gallery-controls button{translate:none!important}.hero-photo{left:0;transform:none!important}}
/* Hero direction 02 — editorial racing poster. */
.hero{height:100svh;min-height:720px;max-height:1100px;background:radial-gradient(ellipse at 77% 43%,#1768ad 0%,#123b70 29%,#071b36 62%);perspective:none}
.hero:before{inset:0 0 0 57%;border:0;border-left:1px solid #74caff22;border-radius:0;box-shadow:none;background:linear-gradient(125deg,#00bce408,transparent 70%);transform:skewX(-12deg);z-index:0}
.hero:after{content:'153';left:auto;right:-1%;top:8%;width:auto;height:auto;font:800 clamp(250px,34vw,580px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #73caff35;background:none;box-shadow:none;animation:none;z-index:1}
.hero h1{left:6%;top:31%;width:53%;font-size:clamp(80px,10.2vw,170px);text-align:left;line-height:.9;letter-spacing:-.025em;z-index:4;text-shadow:none;transform:none;animation:editorial-title .85s ease-out both}
.hero h1>span:nth-child(2){color:#00bce4;margin-top:5px}
.hero-photo{left:auto;right:-2%;bottom:1%;width:56%;height:91%;object-position:center bottom;z-index:3;transform:translate3d(var(--mx,0px),var(--my,0px),0) rotateY(var(--ry,0deg));mask-image:linear-gradient(#000 73%,transparent 98%);filter:drop-shadow(-22px 10px 45px #04152c55);animation:editorial-portrait 1.1s ease-out both}
.hero-shade{background:linear-gradient(0deg,#071b36 0%,transparent 19%);z-index:3}
.hero-top{left:6%;right:6%;top:140px;color:#b1cce5;font-size:10px;letter-spacing:.16em}.hero-top>span:first-child:before{content:'';display:inline-block;width:6px;height:6px;background:#00bce4;border-radius:50%;margin-right:12px;box-shadow:0 0 12px #00bce4}
.hero-bottom{left:6%;right:auto;width:47%;bottom:16%;display:flex;flex-direction:column;align-items:flex-start;gap:24px}.hero-bottom p{font-size:18px;line-height:1.6;color:#c0d2e4}.hero-bottom .round{background:#00bce4;color:#071b3d;border:0;padding:19px 27px;backdrop-filter:none;align-self:flex-start;font-size:12px;border-radius:4px}.hero-bottom>span{display:none}.side-label{right:4%;top:auto;bottom:6%;writing-mode:horizontal-tb;font-size:9px;letter-spacing:.2em;color:#b1cce5}
@keyframes editorial-title{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@keyframes editorial-portrait{from{opacity:0}to{opacity:1}}
@media(min-width:761px) and (max-height:800px){.hero{min-height:650px}.hero-top{top:110px}.hero h1{top:29%;font-size:9.3vw}.hero-bottom{bottom:12%;gap:20px}.hero-photo{height:90%}}
@media(max-width:760px){.hero{height:100svh;min-height:820px;max-height:1100px;background:radial-gradient(ellipse at 70% 57%,#1768ad,#123b70 30%,#071b36 70%)}.hero-top{top:100px;left:7%}.hero h1{left:7%;top:146px;width:86%;font-size:17vw;line-height:.88;z-index:5}.hero h1>span:nth-child(2){margin-top:3px}.hero-photo{left:auto;right:-4%;width:92%;height:57%;bottom:105px;object-position:right bottom;transform:none;mask-image:linear-gradient(#000 70%,transparent 99%)}.hero:after{font-size:76vw;top:37%;right:4%;opacity:.7}.hero:before{inset:26% 0 10% 30%}.hero-bottom{left:7%;right:7%;width:auto;bottom:28px;display:flex;flex-direction:row;align-items:center;gap:14px}.hero-bottom p{font-size:12px;max-width:145px}.hero-bottom .round{align-self:center;font-size:10px;padding:16px 13px;border-radius:3px;max-width:175px;margin:0}.side-label{display:none}.hero-shade{background:linear-gradient(0deg,#071b36 1%,transparent 27%)}}
@media(max-width:380px){.hero{min-height:760px}.hero h1{top:140px}.hero-photo{height:55%;bottom:110px}.hero-bottom{gap:8px}.hero-bottom p{font-size:11px}.hero-bottom .round{font-size:9px;max-width:150px}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero-photo{animation:none!important;translate:none!important;transform:none!important}.hero-photo{left:auto}}
