/* Artes Filmes — visual identity, October 2026.
   Manrope: editorial voice. Space Grotesk: technology. Space Mono: metadata.
   CSS gradients and vector orbits keep the supplied visual system responsive. */
:root{
  --font-main:'Manrope',Arial,sans-serif;
  --font-tech:'Space Grotesk','Manrope',sans-serif;
  --font-mono:'Space Mono',monospace;
  --ink:#141718;--dark:#141718;--cyan:#00acd8;--muted:#62696d;
  --line:#d9dfe0;--pale:#f3f5f5;
  --brand-mist:radial-gradient(ellipse at 100% 110%,#00acd87a 0%,#00acd81c 30%,transparent 57%),linear-gradient(135deg,#fff 5%,#f3f5f5 52%,#e2e7e9 100%);
  --brand-depth:radial-gradient(ellipse at 4% 105%,#00acd88c 0%,#00acd82e 27%,transparent 58%),linear-gradient(140deg,#141718,#1c282d);
  --brand-leak:radial-gradient(ellipse at 0% 0%,#e3f5f5 0%,#00acd899 9%,#00acd825 26%,transparent 52%),#141718;
  --brand-aurora:radial-gradient(ellipse at 97% 0%,#f3f5f5 0%,#c5e9ef 12%,transparent 44%),radial-gradient(ellipse at 0% 110%,#59b5cc 0%,transparent 60%),#00acd8;
  --button-cyan:linear-gradient(120deg,#67d2e9 0%,#24bde2 30%,#00acd8 70%,#009ec9 100%);
  --button-cyan-hover:linear-gradient(120deg,#92e1ed 0%,#3ac7e8 35%,#00acd8 100%);
  --button-pale:linear-gradient(120deg,#fff,#eef5f5 65%,#daf0f4);
  --button-dark:linear-gradient(120deg,#313133,#141718 65%,#1f414d);
  --button-dark-hover:linear-gradient(120deg,#3b3b3e,#20323b 65%,#275766);
}
body{font-family:var(--font-main);font-weight:400;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:var(--font-main)}
h1,h2,h3,h4{font-family:var(--font-main);font-weight:700;letter-spacing:-.04em}
h1{font-weight:800}
strong,b{font-weight:700}
p{font-weight:400}
.eyebrow,.service-card-label,.service-overline,.case-step-label,.case-step-number,.method-tab-number,.method-panel-index,.project-meta,.pill,.tags,.hero-studio-name,.carousel-slide figcaption,.carousel-dots,.software-preview>figcaption,.team-grid article>div>span,.footer-bottom,.footer-top>div:last-child,.content-section-nav,.form-help,.optional{
  font-family:var(--font-mono);font-weight:400;letter-spacing:.055em;
}
.eyebrow{font-size:.7rem;letter-spacing:.11em;line-height:1.7;color:#007e9f}
.service-card-label{font-size:.66rem;line-height:1.7;letter-spacing:.035em;color:#45616b}
.case-step-label{font-size:.68rem}
.case-step-number{font-size:1rem;letter-spacing:-.04em;font-weight:400}
.project-meta{font-size:.72rem}
.pill{font-size:.62rem;letter-spacing:.02em;text-transform:uppercase}
.tags{font-size:.65rem}
.tags span{border:1px solid #cbdde1;background:#f3f6f6;border-radius:999px;padding:6px 12px}
.software h2,.method-heading h2,.eco-row-title h3,.service-row h2,.studio-detail-intro h1,.content-articles h2,.content-learning h2,.client-content h2{
  font-family:var(--font-tech);font-weight:500;text-transform:uppercase;letter-spacing:-.035em;line-height:1.2;
}
.header{background:#fffffff2;backdrop-filter:blur(18px);border-bottom:1px solid #d7e0e4;gap:25px}
.header nav a{font-weight:700;font-size:.82rem}
.header nav a:after{height:1px;background:linear-gradient(90deg,transparent,#00acd8)}
.header .logo img{filter:brightness(.35)}
.btn,.text-link,.service-card-action{font-weight:700}
.btn{box-shadow:inset 0 1px 0 #ffffff55,0 4px 12px #14171805}
.btn:hover{transform:translateY(-2px)}
.btn.outline{border-color:#b7d6de;color:#1b454f}
.menu-toggle{border-color:#bbd4dc}
:focus-visible{outline:2px solid #0089aa;outline-offset:5px}

/* An orbit combines a luminous sphere with a fine, offset circular contour. */
.brand-orbit{position:absolute;display:block;width:clamp(260px,36vw,620px);aspect-ratio:1;border-radius:50%;border:1px solid #90b9c53d;pointer-events:none;z-index:0}
.brand-orbit i{position:absolute;display:block;inset:7%;border-radius:50%;background:linear-gradient(140deg,#24bde2 3%,#00acd8 27%,#245463 63%,#141718 100%)}
.brand-orbit i:after{content:'';position:absolute;inset:0;border-radius:inherit;background:url('/assets/brand-grain.svg');opacity:.14;mix-blend-mode:soft-light}
:is(.page-hero,.software,.ecosystem,.creators-section,.dedicated-feature,.dedicated-hero,.dedicated-perspective,.dedicated-process,.method-experience,.cta,footer){position:relative;isolation:isolate;overflow:hidden}
:is(.page-hero,.software,.ecosystem,.creators-section,.dedicated-feature,.dedicated-hero,.dedicated-perspective,.dedicated-process,.method-experience,.cta,footer):after{
  content:'';position:absolute;inset:0;background:url('/assets/brand-grain.svg');opacity:.045;pointer-events:none;z-index:0;
}
:is(.page-hero,.software,.ecosystem,.creators-section,.dedicated-feature,.dedicated-hero,.dedicated-perspective,.dedicated-process,.method-experience,.cta,footer)>:not(.brand-orbit){position:relative;z-index:1}

/* Photography remains full bleed; the light leak belongs to the new identity. */
.hero-full-width .hero-shade{background:radial-gradient(ellipse at 0% 0%,#00acd84a,transparent 40%),linear-gradient(90deg,#141718f5 0%,#141718dd 30%,#14171883 57%,#14171818 100%),linear-gradient(0deg,#141718bd,transparent 40%)}
.hero-full-width .hero-shade:after{content:'';position:absolute;inset:0;background:url('/assets/brand-grain.svg');opacity:.07}
.hero-full-width .hero-inner{padding-top:84px;padding-bottom:115px}
.hero-full-width .hero-content{max-width:720px}
.hero-full-width h1{font-family:var(--font-main);font-size:clamp(2rem,3.5vw,3.2rem);font-weight:800;letter-spacing:-.045em;line-height:1.18;max-width:720px;text-wrap:pretty}
.hero-full-width h1 em{color:#24bde2;font-style:normal}
.hero-full-width .hero-description{max-width:560px;font-weight:400;line-height:1.8}
.hero-full-width .eyebrow{color:#81dae9;font-size:.69rem;margin-bottom:23px}
.hero-full-width .hero-studio-name{font-size:.68rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;display:flex;gap:12px;align-items:center}
.hero-studio-name:before{content:'';width:7px;height:7px;display:block;border:1px solid #24bde2;border-radius:50%;box-shadow:0 0 10px #00acd855}
.brand-orbit-hero{right:-7%;top:9%;width:min(48vw,690px);border-color:#c8f0f62e;z-index:2}
.brand-orbit-hero i{background:none;border:1px solid #c8f0f61c;inset:6%}
.brand-orbit-hero i:after{background:none}

/* Editorial light surfaces and generous photographic rhythm. */
.home-services{background:radial-gradient(ellipse at 96% 0%,#00acd81f,transparent 40%),#fff}
.home-services .service-icon-card{background:linear-gradient(150deg,#fff 40%,#f3f5f5);border-color:#d8e0e2;box-shadow:none}
.home-services .service-icon-card h3{font-family:var(--font-main);font-weight:700;line-height:1.35}
.home-services .service-icon-card p{font-size:.94rem;line-height:1.8;color:#62696d}
.service-card-icon,.dedicated-icon{background:var(--button-pale);border-color:#c3dde4;border-radius:50%}
.service-icon-card::before{background:radial-gradient(ellipse at 0% 100%,#00acd86b 0%,#00acd823 28%,transparent 58%);filter:blur(22px)}
.service-icon-card::after{background:radial-gradient(ellipse at 85% 15%,#ffffff 0%,#00acd83b 17%,transparent 50%)}
.service-card-plus{box-shadow:inset 0 1px 0 #ffffff66,0 0 0 4px #00acd809}
.projects-section,.dedicated-studios{background:#fff}
.project-photo,.project-card>img{border-radius:20px}
.project-card .project-photo{border:1px solid #e2e7e8}
.project-card h3{font-weight:700}
.project-meta>span:last-child{font-family:var(--font-tech);font-weight:500;color:#007e9f;font-size:.7rem}
.pale,.studios-section,.content-learning{background:var(--brand-mist)}
.studio-feature{border:1px solid #d4dfe2;border-radius:22px;background:#ffffffed}
.studio-tabs button{font-family:var(--font-tech);font-weight:500}
.studio-info h3,.studio-catalog-card h3{font-weight:700}
.studio-catalog-card{border-color:#d6e0e2;background:linear-gradient(135deg,#fff,#f3f5f5)}
.studio-detail-opening{background:radial-gradient(ellipse at 100% 0%,#00acd81f,transparent 45%)}
.studio-detail-intro h1{font-size:clamp(2rem,3.15vw,2.7rem);font-weight:600}
.studio-detail-intro .eyebrow{font-family:var(--font-mono)}
.application-grid figcaption h2{font-family:var(--font-tech);font-weight:500}
.services-editorial .service-row:nth-child(even){background:var(--brand-mist)}
.service-overline{color:#007e9f}
.service-row h2{font-size:clamp(1.55rem,2.25vw,2rem);font-weight:500}
.related-services{background:var(--brand-mist)}
.related-services-grid a{background:#ffffffc9;border-color:#d0e1e5;border-radius:16px;font-weight:500}
.related-services-grid a:hover{background:var(--button-pale)}

/* The technological voice is anchored in graphite, cyan and light. */
.software{background:var(--brand-depth);color:#f3f5f5}
.software h2{font-size:clamp(1.7rem,2.5vw,2.35rem);max-width:530px;font-weight:500}
.software-copy p{color:#d2dce0;font-weight:400}
.software .brand-orbit{right:-5%;bottom:-43%;width:500px;opacity:.4}
.software-screenshot{background:#ffffff0a;border:1px solid #63777f;box-shadow:0 22px 60px #0003}
.software-screenshot>span{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.025em}
.software-image-tabs button{font-family:var(--font-mono);font-weight:400;font-size:.67rem;background:#ffffff0a;border-color:#62767d;color:#e1eaec}
.software-image-tabs button:hover{background:#ffffff12;color:#fff;border-color:#9ed6e0}
.software-image-tabs button[aria-selected=true]{color:#141718;background:var(--button-cyan);border-color:#24bde2}
.ecosystem{background:radial-gradient(ellipse at 95% 5%,#00acd829,transparent 30%),#141718}
.ecosystem .eyebrow{color:#24bde2}
.eco-horizontal>.eco-row{border-color:#63737a59;background:linear-gradient(120deg,#ffffff08,#ffffff02)}
.eco-horizontal .eco-row-title h3{font-size:1.24rem;font-weight:500}
.eco-horizontal .eco-row-copy p{color:#cdd6d9}
.eco-bullet{box-shadow:none;width:33px;height:33px}
.eco-bullets li{color:#d7e2e5}
.creators-section{background:var(--brand-leak)}
.creators-section .section-head h2{font-family:var(--font-tech);font-weight:500;letter-spacing:-.025em}
.quiet-button{font-family:var(--font-mono);font-size:.63rem;font-weight:400}
.method-interactive{background:var(--brand-mist)}
.method-experience{background:radial-gradient(ellipse at 90% 10%,#ffffff 0%,transparent 50%),linear-gradient(135deg,#f3f5f5,#dce9ec 65%,#a8dce8);border-color:#bcd5dd}
.method-experience::before{background:radial-gradient(ellipse,#00acd85e,transparent 68%);filter:blur(35px)}
.method-heading h2{font-size:clamp(1.8rem,2.6vw,2.3rem);font-weight:500}
.method-tab,.method-node{font-family:var(--font-tech);font-weight:500;letter-spacing:-.01em}
.method-panel{background:#ffffffdb;border-color:#c3d5dc;box-shadow:none}
.method-panel h3{font-weight:700}
.method-panel-index{font-weight:400;font-size:.65rem}
.method-core{background:linear-gradient(130deg,#00acd8,#245463 55%,#141718);border-color:#9bd2df;box-shadow:0 0 0 9px #00acd807,0 0 45px #00acd82a}
.method-core-symbol{filter:none}
.method-glass{stroke:#00acd8;stroke-opacity:.5}

/* Shared interior pages, case pages and the dedicated operation. */
.page-hero,.dedicated-hero,.dedicated-feature{background:var(--brand-mist)}
.page-hero .brand-orbit{right:-8%;top:-45%;width:470px;opacity:.13}
.page-hero .brand-orbit i{background:linear-gradient(135deg,#00acd8,#b0d7e2 70%,#f3f5f5)}
.page-hero h1,.page-hero.with-image h1,.dedicated-hero h1{font-weight:800;letter-spacing:-.045em;line-height:1.2}
.page-hero p,.dedicated-feature p{color:#4c585e}
.case-client-logo{z-index:2}
.case-sections h2{font-weight:700}
.case-step-number{background:var(--button-cyan);box-shadow:0 0 0 5px #00acd80a}
.case-step-label>span:last-child{font-weight:400}
.dedicated-feature h2{font-weight:800;letter-spacing:-.04em}
.dedicated-feature>.dedicated-feature-photo{z-index:2}
.dedicated-perspective{background:var(--brand-leak)}
.dedicated-perspective p{color:#d2dce0}
.dedicated-perspective-close{font-weight:700!important}
.dedicated-perspective-heading h2{font-weight:700}
.dedicated-inclusion{background:linear-gradient(135deg,#fff,#f3f5f5);border-color:#d5e1e4}
.dedicated-inclusion h3{font-weight:700}
.dedicated-process{background:var(--brand-mist)}
.dedicated-process-grid article{background:#ffffffd9;border-color:#cddde2}
.dedicated-faq-list summary h3{font-weight:700}
.dedicated-hero .dedicated-lead{font-weight:700;color:#35454c}
.dedicated-contact h2{font-weight:800}
.learning-empty{background:#ffffffb3;border-color:#cadce1}
.content-section-nav a{font-size:.65rem;font-weight:400;letter-spacing:0}
.content-articles h2,.content-learning h2,.client-content h2{font-size:clamp(1.65rem,2.35vw,2.1rem)}
.values-grid article>.icon{color:#0089aa}
.team-grid article>div>span{font-size:.65rem;color:#007e9f;text-transform:uppercase}
.contact-note{background:var(--brand-mist);border-radius:0 16px 16px 0}
form label,form legend{font-weight:700}
form input,form textarea,form select{border-radius:12px;border-color:#c9d7dc;background:#fdfefe;font-weight:400}
form input:focus,form textarea:focus,form select:focus{border-color:#0089aa;outline:2px solid #00acd82a;outline-offset:2px}

/* Aurora closes the conversation; the footer returns to the dark light leak. */
.cta{background:var(--brand-aurora);color:#141718;min-height:300px}
.cta h2{font-weight:800;letter-spacing:-.045em;max-width:620px}
.cta p{color:#10252c;max-width:650px}
.cta .brand-orbit{right:-12%;top:-30%;width:470px;opacity:.2;border-color:#ffffff9e}
.cta .brand-orbit i{background:linear-gradient(140deg,#fff8,#00acd866 45%,#14171859)}
.cta-actions{z-index:2}
.cta .cta-location{font-family:var(--font-mono);font-size:.69rem;line-height:1.8;letter-spacing:.015em}
footer{background:radial-gradient(ellipse at 100% 100%,#00acd838,transparent 45%),#141718;color:#eef1f2;margin-top:38px}
footer .logo img{filter:brightness(0) invert(1)}
footer .footer-top p{color:#bfcbd0;line-height:1.8}
footer .footer-links a{font-weight:500;font-size:.83rem}
footer .footer-top>div:last-child{font-size:.68rem}
footer .footer-top>div:last-child p{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}
footer .text-link{color:#64cde4;font-weight:400;font-size:.75rem}
footer .footer-top a:not(.logo):hover{color:#67d2e9}
footer .footer-bottom{border-color:#6d8d993d;color:#a9bdc5;font-size:.6rem}
footer .brand-orbit{width:390px;right:-14%;bottom:-95%;opacity:.2}

@media(min-width:1440px){.hero-full-width h1{font-size:3.2rem}}
@media(max-width:1100px){
 .header.menu-open nav{background:#fcfefe;border-bottom:1px solid #d5e4e9}
 .hero-full-width .hero-content{max-width:640px}.hero-full-width h1{font-size:2.65rem}
 .brand-orbit-hero{right:-15%;top:20%;width:60vw}
}
@media(max-width:800px){
 .hero-full-width .hero-inner{padding-top:62px;padding-bottom:115px}
 .hero-full-width h1{font-size:2.35rem;max-width:600px}
 .hero-full-width .hero-shade{background:radial-gradient(ellipse at 0% 0%,#00acd836,transparent 45%),linear-gradient(90deg,#141718ed,#141718a6),linear-gradient(0deg,#14171899,transparent 50%)}
 .brand-orbit-hero{width:90vw;right:-40%;top:10%;opacity:.65}
 .software .brand-orbit{bottom:-12%;right:-25%;opacity:.2}
 .page-hero .brand-orbit{width:360px;right:-35%;top:-15%}
 .eco-horizontal .eco-row-title h3{font-size:1.2rem}
 .cta .brand-orbit{right:-35%;top:15%;opacity:.15}
 .footer-top{gap:35px}
}
@media(max-width:520px){
 .header .logo{width:120px}.header nav a{font-size:.9rem}
 .hero-full-width h1{font-size:2rem;line-height:1.22}
 .hero-full-width .hero-content{width:100%}
 .hero-full-width .hero-inner{padding-top:47px;padding-bottom:100px}
 .hero-full-width .eyebrow{font-size:.6rem;margin-bottom:18px}
 .hero-full-width .hero-description{font-size:.94rem;line-height:1.8}
 .hero-full-width .hero-studio-name{font-size:.6rem}
 .service-card-label{font-size:.63rem}
 .hero-full-width .btn{padding:14px 19px}
 .case-step-label{letter-spacing:.025em;font-size:.62rem}
 .case-step-number{font-size:.9rem}
 .software h2{font-size:1.65rem}
 .method-tab-number{font-size:.65rem}
 .method-node{font-size:.73rem}
 .cta h2{font-size:1.7rem}
 .footer-top{padding-top:45px}
 .footer-bottom{gap:15px}
 .content-section-nav{gap:8px}
 .content-section-nav a{font-size:.6rem;padding:10px 12px}
}
@media(prefers-reduced-motion:reduce){.btn:hover{transform:none}.btn{transition:none}}
