@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#252b32;--paper:#ffffff;--orange:#b52230;--line:#e3e5e8;--muted:#626b75}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1440px;margin:auto;padding:0 5%;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.mark{font-size:31px;font-weight:800;border:1px solid var(--ink);padding:0 8px;transform:skewY(-7deg)}.brand strong{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:3px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:4px}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav a:hover,nav a.active{color:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:17px 23px;background:var(--ink);color:white;border:1px solid var(--ink);font-weight:500;font-size:13px;transition:.2s}.btn:hover{background:#901b27;transform:translateY(-2px)}.btn.light{background:transparent;color:var(--ink);border-color:#cbd0d6}.btn.orange{background:var(--orange);border-color:var(--orange)}.wrap{max-width:1440px;margin:auto;padding:0 5%}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:6px;height:6px;background:var(--orange)}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500}h1{font-size:clamp(42px,4.65vw,72px);line-height:1.08;letter-spacing:-3.2px;margin:26px 0}h1 em{font-style:normal;color:#b52230}h2{font-size:clamp(30px,3.2vw,48px);letter-spacing:-1.7px;line-height:1.18;margin:20px 0}h3{font-size:22px;letter-spacing:-.6px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:5%;padding-top:65px;padding-bottom:60px;align-items:center}.hero p{font-size:16px;line-height:1.8;max-width:480px;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-art{position:relative;background:#fafafa;min-width:0}.hero-art img{width:100%;display:block}.art-label{position:absolute;bottom:22px;right:22px;background:var(--paper);padding:16px 20px;font-size:11px}.art-label b{display:block;font-size:14px;margin-bottom:4px}.micro{font-size:10px;letter-spacing:1px;color:var(--muted);margin-top:25px}.strip{display:flex;justify-content:space-between;padding-top:24px;padding-bottom:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1.3px;gap:15px;flex-wrap:wrap}.strip span:before{content:'+';color:var(--orange);margin-right:14px}.section{padding-top:90px;padding-bottom:85px}.heading-row{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.heading-row p{max-width:330px;color:var(--muted);line-height:1.8}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{border:1px solid var(--line);padding:32px;position:relative;display:flex;flex-direction:column;min-height:305px;transition:.2s}.service:hover{border-color:#b52230;background:#fcf9f9}.num{font-family:monospace;font-size:11px;color:var(--orange)}.service p{color:var(--muted);line-height:1.75;font-size:14px}.service .link{margin-top:auto;padding-top:22px;font-size:12px;display:flex;justify-content:space-between}.service h3{margin:30px 0 0}.dark{background:#252b32;color:#ffffff}.dark p{color:#d0d4d8}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split img{width:100%;display:block}.checklist{list-style:none;padding:0}.checklist li{padding:15px 0;border-bottom:1px solid #ffffff25;display:flex;gap:20px;font-size:14px}.checklist li:before{content:'↗';color:#e0a0a5}.link-arrow{display:inline-block;margin-top:20px;border-bottom:1px solid currentColor;padding-bottom:8px;font-size:13px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.filter{padding:10px 19px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:12px}.filter[aria-pressed=true]{background:var(--ink);color:white}.project{border-bottom:1px solid var(--line);padding-bottom:20px;cursor:pointer;background:none;text-align:left;border-top:0;border-left:0;border-right:0;color:var(--ink);width:100%}.project img{width:100%;aspect-ratio:1.38;object-fit:cover;transition:transform .25s}.project:hover img{transform:translateY(-4px)}.project h3{font-size:20px;margin-bottom:8px}.project p{font-size:12px;color:var(--muted)}.tag{font:9px monospace;letter-spacing:1px;color:var(--orange)}.step{border-top:1px solid var(--line);padding:25px 10px 0 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.step p{line-height:1.8;color:var(--muted);font-size:13px}.about{background:#f7f8fa}.about p{line-height:1.9;color:var(--muted)}.profile-letter{border:1px solid #d9dfe4;min-height:310px;display:flex;align-items:center;justify-content:center;font-size:110px;font-family:Manrope;background:repeating-linear-gradient(45deg,transparent,transparent 20px,#d9dfe422 20px,#d9dfe422 21px);position:relative}.profile-letter small{position:absolute;bottom:25px;font:10px monospace;letter-spacing:2px}.faq{max-width:900px;margin:auto}details{border-bottom:1px solid var(--line);padding:23px 0}summary{cursor:pointer;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';color:var(--orange)}details[open] summary:after{content:'−'}details p{line-height:1.85;color:var(--muted);max-width:760px}.contact{background:#f7f8fa}.contact-info p{line-height:1.8;color:var(--muted)}.contact-info a{display:block;margin:18px 0;font-size:18px}.contact-info .eyebrow{font-size:10px}.form{background:var(--paper);padding:35px}.form label{display:block;font-size:11px;letter-spacing:.5px;margin-bottom:8px}.form input,.form select,.form textarea{background:transparent;border:1px solid #ccd1d7;padding:13px;width:100%;color:var(--ink);border-radius:0}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{margin-bottom:20px}.form textarea{min-height:110px;resize:vertical}.form small{font-size:11px;line-height:1.7;display:block;color:var(--muted);margin:16px 0}.form button{width:100%}.consent{display:flex!important;align-items:start;gap:10px;line-height:1.7}.consent input{width:15px;margin-top:2px}.form-status{font-size:12px;line-height:1.7}.footer{padding-top:45px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer-links{display:flex;gap:20px;font-size:12px}.footer-bottom{border-top:1px solid var(--line);margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:30px}.page-intro{max-width:800px;padding:70px 0 35px}.page-intro p{font-size:17px;line-height:1.8;color:var(--muted)}.note{font-size:12px;line-height:1.8;color:var(--muted);padding:20px;border-left:2px solid var(--orange);margin:30px 0}.wide{grid-column:span 2}dialog{border:0;padding:35px;max-width:600px;width:calc(100% - 32px);background:var(--paper);color:var(--ink)}dialog::backdrop{background:#121820bb;backdrop-filter:blur(4px)}dialog p{line-height:1.8;color:var(--muted)}dialog .close{float:right;background:none;border:0;font-size:24px;color:var(--ink)}.menu{display:none}.hidden{display:none!important}.result-box{background:#f7f8fa;padding:20px;margin-top:20px;line-height:1.8}.mobile-cta{display:none}.skip{position:absolute;top:-60px}.skip:focus{top:10px;background:white;padding:12px;z-index:9}@media(min-width:1600px){.wrap,header{max-width:1540px}}@media(max-width:1000px){nav{gap:15px}nav .btn{display:none}.hero{gap:30px}h1{font-size:48px}.service{padding:23px}.grid{gap:12px}.split{gap:40px}}@media(max-width:720px){header{height:80px;position:relative}.brand strong{font-size:17px}.menu{display:block;background:none;border:1px solid var(--line);padding:10px;color:var(--ink)}nav{display:none;position:absolute;top:80px;left:0;right:0;flex-direction:column;background:var(--paper);padding:25px;z-index:10;box-shadow:0 10px 20px #252b3220}nav.open{display:flex}nav .btn{display:block}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px}.hero h1{font-size:48px;letter-spacing:-2px}.hero-art{max-width:100%}.section{padding-top:55px;padding-bottom:55px}.grid{grid-template-columns:1fr}.heading-row{display:block}.heading-row p{max-width:none}.split{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr 1fr}.service{min-height:260px}.service h3{margin-top:20px}.strip{font-size:9px;gap:17px}.strip span{width:44%}.form{padding:22px}.form .row{grid-template-columns:1fr;gap:0}.footer-links{flex-wrap:wrap}.footer-bottom{flex-direction:column}.wide{grid-column:auto}.mobile-cta{display:block;position:fixed;bottom:16px;right:16px;background:var(--ink);color:white;padding:14px 20px;font-size:12px;z-index:8;box-shadow:0 5px 15px #0003}.footer{padding-bottom:80px}.page-intro{padding-top:45px}.page-intro h1{font-size:45px}.profile-letter{min-height:240px}}

/* Norte Engenharia — red, white and technical graphite */
:root{--ink:#252b32;--paper:#fff;--orange:#b52230;--line:#e3e5e8;--muted:#626b75}
header{height:90px;max-width:none;padding-left:max(5%,calc((100% - 1300px)/2));padding-right:max(5%,calc((100% - 1300px)/2));background:white}
.brand .mark{transform:none;border:0;background:#b52230;color:white;display:inline-flex;justify-content:center;align-items:center;width:43px;height:43px;font-family:Manrope,sans-serif;font-size:28px;font-weight:700;padding:0;position:relative}
.brand .mark span{position:absolute;bottom:7px;right:6px;width:8px;height:2px;background:white}.brand strong{font-weight:800;font-size:23px;letter-spacing:4px}.brand small{font-size:8px;letter-spacing:2px}.btn{background:#b52230;border-color:#b52230;border-radius:3px;padding:16px 22px}.btn:hover{background:#921d29;border-color:#921d29;transform:none}.btn.light{background:white;border-color:#d8dde2;color:#39414b}.btn.light:hover{border-color:#a8afb7;background:#fafafa}
h1{letter-spacing:-2.5px;font-weight:600;font-size:clamp(43px,4.6vw,68px)}h2{font-weight:550;letter-spacing:-1.3px}h3{font-weight:600}.hero{padding-top:58px;padding-bottom:60px;grid-template-columns:.95fr 1.05fr;gap:5%}.hero .eyebrow{font-size:9px;letter-spacing:1.6px}.hero-art{background:#f6f7f8;border:1px solid var(--line);padding:12px 12px 75px;border-radius:3px}.hero-art img{width:100%}.art-label{bottom:17px;left:22px;right:22px;background:transparent;border-top:1px solid #e2e5e8;padding:16px 0 0;display:flex;align-items:center;gap:12px;font-size:10px;color:var(--muted)}.art-label b{color:var(--ink);font-size:12px;font-weight:500}.sheet-dot{width:9px;height:9px;background:#b52230;border-radius:50%;flex-shrink:0}.strip{color:#626b75;letter-spacing:1px}.section{padding-top:72px;padding-bottom:72px}.grid:has(>.service){grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:3px}.service{border:0;border-right:1px solid var(--line);padding:26px 23px;min-height:290px}.service:last-child{border-right:0}.service:hover{background:#fdf9f9;border-color:var(--line)}.service h3{font-size:20px;margin-top:24px}.service .link{color:#b52230;font-weight:500}.num{color:#b52230}.heading-row p{font-size:14px;line-height:1.8}.heading-row{margin-bottom:30px}.micro{letter-spacing:.9px;font-size:9px}.about{background:#f7f8fa}.engineer-card{border:1px solid #dde1e6;background:#fff;padding:32px;border-radius:3px}.engineer-monogram{font-size:72px;letter-spacing:-6px;color:#b52230;font-family:Manrope;margin:22px 0}.engineer-card h3{font-size:22px;margin:0}.engineer-card p{margin-top:6px;font-size:13px}.expertise{display:flex;flex-direction:column;gap:11px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:12px;color:#626b75}.expertise span:before{content:'+';margin-right:12px;color:#b52230}.project img{aspect-ratio:1.34;object-fit:contain;border:1px solid #e3e5e8;background:#fff;padding:7px}.project{padding:0 0 20px;border-radius:0}.project h3{font-size:19px}.project:hover img{transform:none;border-color:#b52230}.filter[aria-pressed=true]{background:#b52230;border-color:#b52230}.filter{border-radius:3px}.form{border:1px solid var(--line);border-radius:4px}.form input,.form textarea,.form select{border-radius:3px;background:#fff}.contact{background:#f7f8fa}.contact-info a{font-size:17px}.contact-info a:hover{color:#b52230}.checklist li{border-color:#d9dfe4}.footer-links a:hover{color:#b52230}.mobile-cta{background:#b52230;border-radius:3px}.page-intro h1{font-size:clamp(40px,4.5vw,64px)}.page-intro p{font-size:16px}.steps h3{font-size:19px}.step{padding-top:20px}.step .num{font-size:12px}.viewer-section{border-top:1px solid var(--line)}.viewer-layout{display:grid;grid-template-columns:1.7fr 1fr;border:1px solid var(--line);border-radius:4px;overflow:hidden}.model-stage{position:relative;min-height:490px;background-color:#f6f7f8;background-image:linear-gradient(#d8dde333 1px,transparent 1px),linear-gradient(90deg,#d8dde333 1px,transparent 1px);background-size:32px 32px;overflow:hidden}.model-stage:after{content:'';position:absolute;pointer-events:none;bottom:100px;left:25%;right:25%;height:35px;background:#202b3715;filter:blur(18px);border-radius:50%;z-index:0}#part-viewer{display:block;width:100%;height:490px;touch-action:none;cursor:grab;position:relative;z-index:1}#part-viewer.dragging{cursor:grabbing;touch-action:none}#part-viewer:focus-visible{outline:2px solid #b52230;outline-offset:-4px}#dimension-overlay{position:absolute;top:0;left:0;width:100%;height:490px;pointer-events:none;z-index:2}.model-id{position:absolute;top:22px;left:22px;font:11px monospace;letter-spacing:1px;pointer-events:none;z-index:3}.model-id span{display:block;font:9px 'DM Sans',sans-serif;color:#78818b;margin-top:7px;letter-spacing:1.5px}.viewer-hint{position:absolute;bottom:72px;width:100%;text-align:center;font-size:11px;color:#76808a;pointer-events:none;z-index:3}.viewer-toolbar{display:flex;align-items:center;justify-content:center;position:absolute;bottom:20px;left:15px;right:15px;gap:5px;z-index:4}.viewer-toolbar button{background:#fff;border:1px solid #e0e4e8;border-radius:3px;padding:10px 11px;color:#49525d;font-size:11px}.viewer-toolbar button:hover{border-color:#b52230;color:#b52230}.viewer-toolbar button[aria-pressed=true]{color:#b52230;background:#fff4f4;border-color:#e0b7bb}.model-specs{padding:32px;background:white;border-left:1px solid var(--line)}.model-specs h3{font-size:25px;line-height:1.35;margin:20px 0 12px}.model-specs p{font-size:13px;color:var(--muted);line-height:1.8}.model-specs dl{font-size:12px;margin:20px 0}.model-specs dl>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}.model-specs dt{color:#77818b}.model-specs dd{margin:0;text-align:right;font-weight:500}.model-specs .btn{width:100%;font-size:12px;gap:12px}.model-specs small{font-size:10px;display:block;line-height:1.7;color:#828991;margin-top:18px}.viewer-options{display:flex;gap:7px;margin:18px 0}.viewer-options button{border:1px solid #dce1e6;background:#fff;padding:9px 12px;color:#626b75;font-size:11px;border-radius:3px}.viewer-options button[aria-pressed=true]{background:#fff4f4;color:#ad2530;border-color:#e2b5ba}.drawing-link{display:block;text-align:center;margin-top:16px;font-size:11px;color:#b52230}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.viewer-error{position:absolute;inset:70px 25px auto;padding:20px;background:#fff;z-index:5;line-height:1.8;font-size:14px}.viewer-error a{color:#b52230;text-decoration:underline}
@media(max-width:1050px){.grid:has(>.service){grid-template-columns:1fr 1fr}.service:nth-child(2){border-right:0}.service:nth-child(-n+2){border-bottom:1px solid var(--line)}.model-specs{padding:22px}.hero .eyebrow{line-height:1.8}.viewer-layout{grid-template-columns:1.4fr 1fr}.viewer-toolbar button{padding:10px 8px}.hero-art{padding-bottom:85px}}
@media(max-width:720px){header{height:80px;padding:0 5%}.brand strong{font-size:21px}.brand small{font-size:7px}.brand .mark{width:38px;height:38px;font-size:25px}.hero{grid-template-columns:1fr;padding-top:35px;gap:28px}.hero h1{font-size:46px;letter-spacing:-2px}.hero p{font-size:15px}.hero .eyebrow{font-size:8px}.hero-art{padding:9px 9px 65px}.art-label{bottom:13px;left:16px;right:16px;padding-top:13px;font-size:9px}.art-label b{font-size:11px}.hero .actions{gap:8px}.hero .btn{font-size:12px;padding:15px 16px}.section{padding-top:45px;padding-bottom:45px}.grid:has(>.service){grid-template-columns:1fr}.service{border-right:0;border-bottom:1px solid var(--line);min-height:230px;padding:25px}.service:last-child{border-bottom:0}.heading-row p{font-size:13px}.model-stage,#part-viewer,#dimension-overlay{height:370px;min-height:370px}.viewer-layout{grid-template-columns:1fr}.model-specs{border-left:0;border-top:1px solid var(--line);padding:25px}.model-specs h3{font-size:23px}.viewer-toolbar{gap:4px;left:9px;right:9px;bottom:15px}.viewer-toolbar button{font-size:10px;padding:10px 8px}.viewer-hint{font-size:10px;bottom:62px}.model-id{top:17px;left:17px;font-size:10px}.model-id span{font-size:8px}.viewer-layout .eyebrow{font-size:9px}.model-specs dl{font-size:11px}.contact-info a{font-size:15px}.strip{gap:14px}.strip span{font-size:8px}.page-intro h1{font-size:42px}.engineer-monogram{font-size:60px}.footer{padding-bottom:80px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Approved horizontal logo, preserved at its natural aspect ratio. */
.brand-image{display:block;flex:0 0 auto;line-height:0;gap:0}.brand-logo{display:block;width:280px;height:auto;max-width:100%;object-fit:contain}.footer .brand-logo{width:300px}.footer-top{align-items:center}header{gap:20px}
@media(max-width:1100px) and (min-width:721px){header .brand-logo{width:215px}header nav{gap:18px;font-size:12px}}
@media(max-width:720px){header .brand-logo{width:225px}.footer .brand-logo{width:265px}header{gap:12px}.brand-image{max-width:calc(100% - 60px)}}
@media(max-width:350px){header .brand-logo{width:195px}}
/* Model catalog and automotive trim offer. */
.model-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.model-tab{padding:13px 18px;background:white;border:1px solid #dce1e6;color:#4f5965;border-radius:3px;font-size:12px}.model-tab[aria-pressed=true]{background:#b52230;color:white;border-color:#b52230}.model-tab:hover{border-color:#b52230}.model-id #model-code{color:#4f5965;font:11px monospace;margin:0}.auto-trim{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;padding-top:20px;padding-bottom:65px}.auto-trim p{font-size:15px;line-height:1.85;color:#626b75;max-width:590px}.auto-trim strong{color:#303945;font-weight:500}.auto-trim .trim-small{font-size:13px}.trim-steps{align-self:center;border-left:2px solid #b52230;padding:10px 0 10px 30px}.trim-steps>span{display:block;padding:17px 0;border-bottom:1px solid #e3e5e8;font-size:13px}.trim-steps small{display:block;line-height:1.8;color:#7a828b;font-size:11px;margin-top:20px}.grid:has(>.service){grid-template-columns:repeat(3,1fr)}.service:nth-child(3){border-right:0}.service:nth-child(4){border-right:1px solid var(--line)}.service:nth-child(-n+3){border-bottom:1px solid var(--line)}
@media(max-width:1050px){.grid:has(>.service){grid-template-columns:1fr 1fr}.service:nth-child(3){border-right:1px solid var(--line)}.service:nth-child(even){border-right:0}.service:nth-child(-n+4){border-bottom:1px solid var(--line)}}
@media(max-width:720px){.auto-trim{grid-template-columns:1fr;gap:25px;padding-top:0;padding-bottom:45px}.trim-steps{padding-left:22px}.model-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.model-tab{padding:12px 8px;font-size:10px}.grid:has(>.service){grid-template-columns:1fr}.service:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}.service:last-child{border-bottom:0}.viewer-hint{font-size:9px}}
.creative-teaser{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:6%;padding-top:25px;padding-bottom:65px}.creative-teaser p{color:var(--muted);line-height:1.9;max-width:530px}.octopus-art{display:block;position:relative;background:#fff6f5;border-radius:12px;border:1px solid #f6deda;overflow:hidden}.octopus-art img{display:block;width:100%;max-height:365px;object-fit:contain}.octopus-art>span{display:block;text-align:center;font-size:9px;letter-spacing:2px;color:#aa2838;padding:0 20px 22px}.articulation-controls{background:#fff5f4;border:1px solid #f0d2cf;border-radius:5px;padding:16px;margin:18px 0}.articulation-controls label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#b52230}.articulation-controls input{width:100%;margin:16px 0 8px;accent-color:#b52230;cursor:pointer}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:#7d6670}.creative-options .grid .service{border:1px solid var(--line)}
@media(max-width:720px){.creative-teaser{grid-template-columns:1fr;gap:25px;padding-top:0;padding-bottom:45px}.octopus-art img{max-height:300px}.model-tabs{grid-template-columns:1fr 1fr}.model-tab:last-child{grid-column:1/-1}.articulation-controls label{font-size:9px}}
/* Direct manipulation: large touch targets, visible numbered tips, keyboard focus. */
.octopus-handles{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.octopus-handle{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border:0;padding:0;background:transparent;color:#a91f30;touch-action:none;pointer-events:auto;cursor:grab;font:600 10px 'DM Sans',sans-serif;isolation:isolate}.octopus-handle:before{content:'';position:absolute;inset:11px;background:#fffdf9ed;border:1px solid #bf3445;border-radius:50%;z-index:-1;box-shadow:0 2px 6px #52102025}.octopus-handle:hover:before,.octopus-handle.held:before{inset:7px;background:#b52230}.octopus-handle:hover,.octopus-handle.held{color:white}.octopus-handle.held{cursor:grabbing}.octopus-handle:focus-visible{outline:2px solid #b52230;border-radius:50%}.head-handle{font-size:18px}.head-handle:before{inset:7px}.motion-actions{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.motion-actions button{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:4px;min-height:40px;padding:8px 10px;font-size:11px}.motion-actions button[aria-pressed=true]{border-color:#bd4351;color:#a61e2c}.model-specs .motion-help{font-size:11px;line-height:1.7;margin:13px 0 0}.viewer-hint{padding:0 18px;line-height:1.6}.theme-toggle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:50%;flex:none}.theme-toggle:hover{border-color:var(--orange)}.theme-toggle svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sun-icon{display:none}.header-tools{display:flex;gap:10px;align-items:center;order:3}header nav{order:2}header .brand-image{order:1}.theme-toggle:focus-visible{outline:2px solid var(--orange)}
:root{color-scheme:light;--surface:#f7f8fa;--card:#fff;--accent-readable:#b52230}
:root[data-theme=dark]{color-scheme:dark;--ink:#eef1f6;--paper:#101419;--surface:#171d25;--card:#1c232d;--line:#333d4b;--muted:#adb7c5;--orange:#ff8390;--accent-readable:#ff929d}
[data-theme=dark] header{background:var(--paper)}[data-theme=dark] .brand-logo{filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen}
[data-theme=dark] :is(.about,.contact,.result-box,.hero-art){background:var(--surface)}[data-theme=dark] :is(.engineer-card,.form,.model-specs,dialog,.model-tab,.viewer-options button,.viewer-toolbar button,.viewer-error){background:var(--card);color:var(--ink);border-color:var(--line)}
[data-theme=dark] :is(.form input,.form select,.form textarea){background:var(--paper);border-color:#4c5869;color:var(--ink)}[data-theme=dark] :is(input,textarea)::placeholder{color:#8e9aab}[data-theme=dark] .btn.light{background:var(--card);border-color:#536072;color:var(--ink)}[data-theme=dark] .btn.light:hover{background:#27313e}
[data-theme=dark] :is(.expertise,.auto-trim p,.strip,.trim-steps small,.model-specs dt,.model-specs small,.range-labels,.viewer-hint,.model-id span){color:var(--muted)}[data-theme=dark] .auto-trim strong{color:var(--ink)}[data-theme=dark] :is(.num,.drawing-link,.service .link,.engineer-monogram,h1 em,.expertise span:before,.articulation-controls label,.model-id #model-code){color:var(--accent-readable)}[data-theme=dark] .trim-steps>span,[data-theme=dark] .art-label{border-color:var(--line)}
[data-theme=dark] .service:hover{background:#1d232c}[data-theme=dark] .project img{background:#eceff3;border-color:var(--line)}[data-theme=dark] .dark{background:#1b232d}[data-theme=dark] .dark p{color:#c0cad8}
[data-theme=dark] .model-stage{background-color:#141c27;background-image:linear-gradient(#71839d13 1px,transparent 1px),linear-gradient(90deg,#71839d13 1px,transparent 1px)}[data-theme=dark] .model-stage:after{background:#0009}
[data-theme=dark] .articulation-controls{background:#261c24;border-color:#683c48}[data-theme=dark] .articulation-controls input{accent-color:#fa7183}[data-theme=dark] .motion-actions button{background:#1c232d;border-color:#63505b;color:#f7e4e8}[data-theme=dark] .motion-actions button[aria-pressed=true]{border-color:#ff8390;color:#ff9ca7}
[data-theme=dark] :is(.model-tab[aria-pressed=true],.filter[aria-pressed=true]){background:#b52230;color:white;border-color:#d14c5d}[data-theme=dark] :is(.viewer-options button[aria-pressed=true],.viewer-toolbar button[aria-pressed=true]){background:#3b222d;color:#ffb5be;border-color:#8f4a59}[data-theme=dark] .octopus-art{background:#2a1b24;border-color:#623440}[data-theme=dark] .octopus-art>span{color:#ff9fab}[data-theme=dark] .octopus-art img{mix-blend-mode:lighten;filter:brightness(.85)}[data-theme=dark] .octopus-handle{color:#ffe4e8}[data-theme=dark] .octopus-handle:before{background:#361e29ed;border-color:#ff9aa7}
[data-theme=dark] .theme-toggle .moon-icon{display:none}[data-theme=dark] .theme-toggle .sun-icon{display:block}[data-theme=dark] .skip:focus{background:var(--card)}[data-theme=dark] :focus-visible{outline-color:#ff929d}
@media(max-width:1100px) and (min-width:721px){header .brand-logo{width:200px}header nav{gap:13px}header{gap:15px}}
@media(max-width:720px){.header-tools{order:2;gap:7px}header nav{order:3}.theme-toggle{width:38px;height:38px}.brand-image{max-width:calc(100% - 112px)}header .brand-logo{width:210px}.model-specs .motion-help{font-size:11px}.octopus-handle{width:48px;height:48px}.octopus-handle:before{inset:13px}.head-handle:before{inset:8px}}
/* Let the model use the full height of its accompanying controls. */
.model-stage #part-viewer,.model-stage #dimension-overlay{position:absolute;inset:0;height:100%;min-height:0}.octopus-handles{bottom:0}

/* Preserve the approved red N; only the wordmark keeps the dark-theme treatment. */
.brand-image{position:relative}.brand-original-n{display:none;position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
[data-theme=dark] .brand-logo{clip-path:inset(0 0 0 35%)}[data-theme=dark] .brand-original-n{display:block}
