:root{--bg:#050b15;--panel:#0b1421;--panel2:#101c2b;--text:#f5f3ef;--muted:#a7b1bf;--line:rgba(180,199,220,.16);--accent:#ed5b08;--serif:Georgia,'Times New Roman','Noto Serif SC',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.75 Arial,'Microsoft YaHei',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}svg{vertical-align:middle;flex-shrink:0}p{margin:0 0 20px}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.16;margin:0 0 22px}h1{font-size:clamp(40px,5.1vw,78px);letter-spacing:-2px}h2{font-size:clamp(30px,3.3vw,48px);letter-spacing:-1px}h3{font-size:24px}.container{width:min(1240px,calc(100% - 96px));margin:auto}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--bg)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:49px;height:49px;border-radius:50%;object-fit:cover}.brand span{font:600 16px/1.15 var(--serif);max-width:160px;letter-spacing:1.5px}.nav,.nav-links{display:flex;align-items:center}.nav{gap:28px}.nav-links{gap:25px}.nav-item{position:relative}.nav-item>a{display:block;font-size:13px;position:relative;line-height:92px;white-space:nowrap}.nav-item>a:after{content:'';position:absolute;height:2px;background:var(--accent);left:0;right:100%;bottom:26px;transition:.2s}.nav-item>a.active:after,.nav-item>a:hover:after{right:0}.languages{display:flex;border-left:1px solid var(--line);padding-left:20px;gap:10px;font-size:11px}.languages a{color:var(--muted)}.languages .selected{color:var(--accent)}.subnav{display:none;position:absolute;top:80px;left:-20px;min-width:220px;background:var(--panel);border:1px solid var(--line);padding:10px 0}.subnav a{display:block;padding:10px 20px}.subnav a:hover{color:var(--accent)}.nav-item:hover .subnav,.nav-item:focus-within .subnav{display:block}.menu-toggle{display:none}.hero{position:relative;overflow:hidden;min-height:690px;background:radial-gradient(ellipse at 72% 30%,#1c2e3a,transparent 56%)}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,transparent 99.8%,#fff1 100%);background-size:18% 100%;opacity:.35}.hero-image{position:absolute;right:0;top:0;width:53%;height:100%;background-size:cover;background-position:60% 30%;mask-image:linear-gradient(90deg,transparent,#000 28%);opacity:.85}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,var(--bg),transparent 40%),linear-gradient(90deg,var(--bg),transparent 45%)}.hero-inner{position:relative;display:flex;align-items:center;min-height:600px;z-index:1}.hero-copy{width:63%;padding-top:30px}.eyebrow{display:block;color:var(--accent);font:600 11px/1.6 Arial,'Microsoft YaHei',sans-serif;letter-spacing:2.4px;margin-bottom:24px;text-transform:uppercase}.hero-copy .eyebrow:before{content:'';width:32px;height:1px;background:var(--accent);display:inline-block;margin:0 12px 4px 0}.hero h1{margin-bottom:30px;max-width:810px;text-wrap:balance}.hero-copy>p{color:#c1c8d0;font-size:16px;max-width:460px}.button-row{display:flex;align-items:center;gap:28px;margin-top:32px}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;min-height:50px;padding:13px 23px;display:inline-flex;align-items:center;justify-content:center;gap:22px;transition:.2s;font-size:13px;font-weight:600;line-height:1.5}.button svg{width:20px}.button:hover{background:#ff7424;border-color:#ff7424;transform:translateY(-1px)}.text-link{display:inline-flex;align-items:center;gap:15px;font-size:12px;letter-spacing:.3px}.text-link svg{width:20px;color:var(--accent);transition:.2s}.text-link:hover svg{transform:translateX(4px)}.hero-caption{position:absolute;right:0;bottom:90px;border-left:1px solid var(--accent);padding:0 0 0 18px}.hero-caption>span{font:italic 70px/1 var(--serif);opacity:.8}.hero-caption p{font-size:9px;letter-spacing:2px;margin:14px 0 0;max-width:160px;line-height:2}.hero-bottom{height:80px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;color:#b2bdc9;letter-spacing:2px;font-size:9px}.hero-bottom a{display:flex;align-items:center;gap:20px}.hero-bottom a span{color:var(--accent);font-size:20px}.service-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;gap:25px}.service-strip a{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:17px;line-height:1.3}.service-strip a>span{color:var(--accent);font:10px Arial}.service-strip svg{margin-left:auto;width:18px;color:var(--muted)}.section{padding:95px 0}.section-bottom{padding-bottom:95px}.section-alt{background:#09111d;border-top:1px solid #ffffff04;border-bottom:1px solid #ffffff04}.section-heading{max-width:760px;margin-bottom:40px}.section-heading h2{margin-bottom:20px}.section-heading>p{color:var(--muted);max-width:660px}.profile{display:grid;grid-template-columns:.95fr 1.05fr;gap:95px;align-items:center}.profile .section-heading{margin-bottom:20px}.profile-image{position:relative;padding:0 20px 20px 0}.profile-image>img{height:400px;width:100%;object-fit:cover}.profile-image:after{content:'';position:absolute;border:1px solid var(--accent);inset:30px 0 0 30px;z-index:-1;opacity:.5}.photo-label{background:var(--panel);position:absolute;bottom:0;right:0;padding:18px 28px;font:18px var(--serif);border-left:2px solid var(--accent)}.photo-label span{display:block;font:9px Arial;letter-spacing:2px;color:var(--muted);margin-top:10px}.muted{color:var(--muted)}.rich-text{overflow-wrap:anywhere}.rich-text img,.rich-text video{max-width:100%;height:auto}.rich-text table{border-collapse:collapse;width:100%;margin:24px 0;display:block;overflow-x:auto}.rich-text td,.rich-text th{border:1px solid var(--line);padding:10px}.rich-text a{color:var(--accent);text-decoration:underline}.rich-text h2,.rich-text h3{margin-top:28px}.rich-text blockquote{margin:25px 0;padding:16px 24px;border-left:2px solid var(--accent);background:var(--panel)}.rich-text .button{color:white;text-decoration:none;margin-top:30px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.service-card{border:1px solid var(--line);background:var(--bg);transition:.25s;overflow:hidden}.service-card:hover{border-color:var(--accent);transform:translateY(-5px)}.card-picture{position:relative}.card-picture img{width:100%;height:180px;object-fit:cover}.card-index{position:absolute;bottom:-17px;left:22px;background:var(--accent);font:17px var(--serif);width:35px;height:35px;display:grid;place-items:center;border-radius:50%}.service-copy{padding:35px 22px 25px}.service-copy h3{font-size:23px;min-height:54px;margin-bottom:14px}.service-copy>p{color:var(--muted);font-size:13px;line-height:1.7;min-height:110px}.line-icon{display:none}.reasons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.reasons-grid article{padding:34px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.reasons-grid article:nth-child(3n){border-right:0}.reasons-grid article:nth-last-child(-n+3){border-bottom:0}.reason-icon{width:62px;height:62px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--accent);margin-bottom:22px}.reason-icon svg{width:30px;height:30px}.reasons-grid h3{font-size:22px;margin-bottom:12px}.reasons-grid p{font-size:14px;color:var(--muted);margin:0}.mission{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:70px;padding-top:50px;border-top:1px solid var(--line)}.mission img{width:100%;mix-blend-mode:screen}.mission h3{font-size:32px}.mission p{color:var(--muted)}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.process-grid article{position:relative}.process-grid img{width:100%;height:175px;object-fit:cover;margin-bottom:28px;border-radius:2px}.step-number{font:43px/1 var(--serif);color:var(--accent);display:block;margin-bottom:18px}.process-grid h3{font-size:21px;min-height:50px;margin-bottom:12px}.process-grid p{font-size:13px;color:var(--muted)}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.video-card{display:grid;grid-template-columns:200px 1fr;border:1px solid var(--line);background:var(--panel);grid-column:span 2;gap:50px;align-items:center;max-width:850px}.video-card video{display:block;width:200px;max-height:356px;background:#000}.video-card>div{padding:30px 45px 30px 0}.video-card h3{font-size:36px}.video-card p{color:var(--muted)}.empty-note{padding:30px;border:1px solid var(--line);color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.product-card{border:1px solid var(--line);background:var(--panel);transition:.2s;overflow:hidden}.product-card:hover{border-color:var(--accent)}.product-card>img{height:240px;width:100%;object-fit:cover}.product-card>div{padding:25px}.product-card h3{font-size:24px}.product-card p{font-size:14px;color:var(--muted)}.product-card .text-link{display:flex;margin-top:22px}.price{color:var(--accent);font:30px var(--serif)}.empty-panel{padding:45px;border:1px solid var(--line);background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:25px}.empty-panel p{color:var(--muted);max-width:700px;margin:0}.empty-panel .button{flex-shrink:0}.cta-section{background:linear-gradient(115deg,#142334,#0b1421);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:60px 0}.cta-section>.container{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-section h2{font-size:42px;max-width:850px;margin:0}.cta-section .eyebrow{margin-bottom:12px}.footer{padding-top:55px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}.footer-top p{color:var(--muted);font-size:10px;letter-spacing:1px;margin:0 0 10px}.footer-top>div a{font-size:13px}.footer-social{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:15px}.footer-bottom{border-top:1px solid var(--line);padding:22px 0;margin-top:45px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.floating{position:fixed;right:15px;bottom:24px;z-index:15;display:flex;flex-direction:column;gap:6px}.floating a{background:var(--panel2);border:1px solid var(--line);width:44px;height:44px;display:grid;place-items:center;font-size:13px;color:#fff}.floating a:hover{background:var(--accent)}.page-hero{padding:75px 0 45px}.page-hero .section-heading{max-width:960px;margin:0}.page-hero h2{font-size:clamp(36px,4.6vw,66px)}.back-link{font-size:12px;color:var(--muted);display:inline-block;margin-bottom:28px}.detail-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:start;padding-bottom:55px}.detail-image{width:100%;max-height:510px;object-fit:cover}.detail-video{width:100%;max-height:650px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.gallery button{padding:0;border:0;background:none}.gallery img{width:100%;height:130px;object-fit:cover}.article-nav{display:flex;justify-content:space-between;padding:40px 0;border-top:1px solid var(--line);gap:20px}.article-nav a{font-size:13px;color:var(--muted);max-width:47%}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:35px}.filter-bar a{border:1px solid var(--line);font-size:12px;padding:7px 18px}.filter-bar a.active{background:var(--accent);border-color:var(--accent)}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-bottom:95px;align-items:start}.main-product{width:100%;max-height:650px;object-fit:contain;background:var(--panel)}.product-detail h1{font-size:46px}.order-panel{margin-top:40px;padding:30px;background:var(--panel);border:1px solid var(--line)}.order-panel h2{font-size:28px}.public-form label{display:block;font-size:12px;color:#c2cbd5;margin-bottom:17px}.public-form input,.public-form textarea{display:block;margin-top:7px;background:#050b15;border:1px solid #354155;color:#fff;border-radius:0;width:100%;padding:10px 12px;min-height:48px;transition:.2s}.public-form textarea{resize:vertical}.public-form input:focus,.public-form textarea:focus{border-color:var(--accent);outline:none}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.captcha-row{display:flex;align-items:flex-end;gap:15px;margin-bottom:20px}.captcha-row label{margin:0;flex:1}.captcha-refresh{border:0;padding:0;background:#e9edf2;display:block;height:48px}.captcha-refresh img{height:48px;width:154px}.small{font-size:11px}.form-feedback{margin-top:20px;font-size:13px}.form-feedback.error{color:#ff9c86}.form-feedback.success{color:#79dcb7}.public-form .button:disabled{opacity:.6;cursor:wait}.honeypot{position:absolute;left:-9999px}.order-total{display:flex;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:12px}.order-total strong{color:var(--accent);font-size:18px}.receipt{max-width:760px;text-align:center;min-height:570px}.receipt h1{font-size:44px}.receipt-check{display:inline-grid;place-items:center;width:70px;height:70px;border:1px solid var(--accent);color:var(--accent);border-radius:50%;font-size:30px;margin-bottom:30px}.receipt-box{text-align:left;background:var(--panel);border:1px solid var(--line);padding:25px;margin:30px 0}.receipt-box p{display:flex;justify-content:space-between;gap:30px;font-size:14px}.receipt-box p:last-child{margin:0}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.social-card{padding:32px;border:1px solid var(--line);background:var(--panel);position:relative}.social-card:hover{border-color:var(--accent)}.social-icon{display:grid;place-items:center;width:50px;height:50px;background:var(--accent);font:25px var(--serif);margin-bottom:25px}.social-card>svg{position:absolute;top:35px;right:30px;color:var(--accent)}.social-card p{color:var(--muted);font-size:14px}.qr-code{width:150px;height:150px;object-fit:contain;background:#fff}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;padding-bottom:95px;align-items:start}.contact-email{font-size:22px;display:flex;gap:14px;margin-bottom:35px;align-items:center}.contact-email svg{color:var(--accent)}.office-card{border-top:1px solid var(--line);padding:25px 0 10px}.office-card h3{font-size:25px;margin-bottom:12px}.office-card .eyebrow{margin-bottom:7px;font-size:9px}.office-card>p{color:var(--muted);font-size:14px}.office-card>p.small{font-size:12px;line-height:1.9}.office-card a{color:#e5eaf0}.contact-form-panel{background:var(--panel);border:1px solid var(--line);padding:35px}.contact-form-panel h2{font-size:28px}dialog#lightbox{border:0;padding:0;background:transparent;max-width:92vw;max-height:90vh;overflow:visible}dialog#lightbox::backdrop{background:#000d}#lightbox img{max-height:85vh;max-width:90vw;object-fit:contain}.lightbox-close{position:absolute;right:0;top:-44px;background:none;border:0;color:#fff;font-size:32px}.empty-panel .text-link{flex-shrink:0}html[lang=fr] .service-copy h3{font-size:22px;min-height:105px}html[lang=fr] .service-copy>p{min-height:180px}html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-weight:500;letter-spacing:.5px}
@media(min-width:1500px){.hero{min-height:760px}.hero-inner{min-height:660px}.hero-image{width:55%;background-position:70% 25%}}
@media(max-width:1150px){.header{padding:0 3vw}.nav-links{gap:15px}.nav{gap:18px}.brand span{font-size:13px;max-width:130px}.languages{gap:7px;padding-left:12px}.nav-item>a{font-size:12px}.container{width:calc(100% - 64px)}.hero h1{font-size:64px}.service-grid{gap:15px}.service-copy{padding:32px 16px 22px}.service-copy h3{font-size:21px}.profile{gap:50px}.card-picture img{height:150px}.service-copy>p{min-height:135px}.process-grid img{height:145px}}
@media(max-width:900px){.header{height:80px;padding:0 28px}.brand span{font-size:15px;max-width:180px}.brand img{height:43px;width:43px}.menu-toggle{display:block;background:none;border:0;padding:10px;width:44px}.menu-toggle span{display:block;height:1px;background:white;margin:7px 0}.nav{display:none;position:absolute;left:0;top:80px;width:100%;background:var(--panel);padding:20px 28px;border-bottom:1px solid var(--line)}.nav.open{display:block}.nav-links{display:block}.nav-item>a{line-height:45px;font-size:14px}.nav-item>a:after{bottom:4px}.nav-item:hover .subnav{position:static}.subnav{position:static;margin-bottom:10px}.languages{border:0;padding:15px 0;gap:22px}.hero{min-height:610px}.hero-inner{min-height:530px}.hero-copy{width:80%}.hero h1{font-size:58px}.hero-image{width:70%;opacity:.65}.hero-caption{display:none}.hero-copy p{max-width:430px}.service-strip{grid-template-columns:1fr 1fr;gap:25px}.service-grid{grid-template-columns:1fr 1fr;gap:25px}.card-picture img{height:210px}.service-copy h3{min-height:0}.service-copy>p{min-height:65px}.profile{gap:40px}.profile-image>img{height:380px}.section{padding:70px 0}.process-grid{grid-template-columns:1fr 1fr;gap:30px}.process-grid img{height:220px}.process-grid h3{min-height:0}.reasons-grid article{padding:25px}.reasons-grid h3{font-size:20px}.mission{gap:35px}.product-grid{grid-template-columns:1fr 1fr}.contact-layout{gap:35px}.contact-email{font-size:16px}.contact-form-panel{padding:25px}.contact-form-panel .form-two{grid-template-columns:1fr}.product-detail{gap:35px}.product-detail h1{font-size:34px}.order-panel{padding:22px}.social-grid{grid-template-columns:1fr 1fr}.detail-layout{gap:35px}html[lang=fr] .service-copy h3,html[lang=fr] .service-copy>p{min-height:0}.footer-top{grid-template-columns:1fr 1fr}.footer-social{grid-column:span 2;justify-content:start}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.header{padding:0 20px}.brand img{width:40px;height:40px}.brand span{font-size:14px;max-width:165px}.hero{min-height:620px}.hero-inner{min-height:550px}.hero-copy{width:100%;padding-top:25px}.hero h1{font-size:46px;letter-spacing:-1.5px}.hero-image{width:100%;opacity:.48;background-position:80% 30%;mask-image:linear-gradient(90deg,transparent,#000 15%)}.hero-image:after{background:linear-gradient(0deg,var(--bg),transparent 50%),linear-gradient(90deg,#050b15dd,transparent)}.hero-copy>p{font-size:14px;max-width:320px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:20px}.button-row{gap:20px;flex-wrap:wrap;margin-top:25px}.button{font-size:12px;padding:12px 18px;gap:18px}.hero-bottom{height:65px;font-size:8px;letter-spacing:.8px}.hero-bottom a{font-size:7px;gap:10px}.service-strip{gap:20px;padding:22px 0}.service-strip a{font-size:15px;gap:7px}.service-strip svg{width:14px}.section{padding:55px 0}.section-bottom{padding-bottom:55px}.section-heading{margin-bottom:30px}.section-heading h2{font-size:32px;letter-spacing:-.5px}.profile{grid-template-columns:1fr;gap:45px}.profile-image>img{height:270px}.photo-label{font-size:17px}.service-grid{gap:16px}.card-picture img{height:140px}.service-copy{padding:30px 15px 20px}.service-copy h3{font-size:20px;line-height:1.2}.service-copy>p{font-size:12px;min-height:120px}.service-copy .text-link{font-size:10px;gap:8px}.service-copy .text-link svg{width:16px}.card-index{left:15px}.reasons-grid{grid-template-columns:1fr 1fr}.reasons-grid article{padding:22px 15px;border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}.reasons-grid article:nth-child(2n){border-right:0!important}.reasons-grid article:nth-last-child(-n+2){border-bottom:0!important}.reasons-grid h3{font-size:19px}.reasons-grid p{font-size:12px}.reason-icon{width:50px;height:50px}.reason-icon svg{width:25px}.mission{grid-template-columns:1fr;gap:30px;margin-top:40px;padding-top:35px}.mission h3{font-size:29px}.process-grid{gap:22px 18px}.process-grid img{height:140px;margin-bottom:20px}.step-number{font-size:32px;margin-bottom:15px}.process-grid h3{font-size:20px}.process-grid p{font-size:12px}.video-card{grid-template-columns:135px 1fr;gap:20px}.video-card video{width:135px;max-height:240px}.video-card>div{padding:20px 20px 20px 0}.video-card h3{font-size:24px}.video-card p{font-size:12px}.empty-panel{display:block;padding:30px}.empty-panel p{margin-bottom:22px;font-size:14px}.cta-section{padding:45px 0}.cta-section>.container{display:block}.cta-section h2{font-size:32px;margin-bottom:25px}.footer-top{grid-template-columns:1fr;gap:28px}.footer-social{grid-column:auto}.footer-bottom{display:block;font-size:9px;margin-top:30px}.footer-bottom>a{display:block;margin-top:15px}.floating{right:7px;bottom:15px}.floating a{width:36px;height:36px}.floating svg{width:22px}.page-hero{padding:50px 0 35px}.page-hero h2{font-size:38px}.detail-layout,.product-detail,.contact-layout{grid-template-columns:1fr;gap:30px}.detail-layout .detail-image{order:-1;height:270px}.detail-layout{padding-bottom:35px}.product-grid{gap:15px}.product-card>img{height:165px}.product-card>div{padding:18px}.product-card h3{font-size:22px}.product-card p{font-size:12px}.product-card .price{font-size:22px}.product-card .text-link{font-size:11px}.product-detail{padding-bottom:55px}.product-detail h1{font-size:36px}.main-product{max-height:420px}.form-two{grid-template-columns:1fr}.order-panel{padding:25px 20px}.contact-layout{padding-bottom:55px}.contact-email{font-size:19px}.contact-form-panel{padding:25px 20px}.contact-form-panel h2{font-size:27px}.captcha-row{gap:10px}.captcha-refresh img{width:135px}.social-grid{grid-template-columns:1fr}.social-card{padding:28px}.receipt h1{font-size:34px}.receipt-box{padding:20px}.receipt-box p{font-size:12px}.gallery img{height:95px}.article-nav{display:block}.article-nav a{display:block;max-width:100%;margin:15px 0}html[lang=fr] .service-grid{grid-template-columns:1fr}html[lang=fr] .card-picture img{height:210px}html[lang=fr] .service-copy>p{min-height:0}html[lang=fr] .service-copy h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Brighter blue palette and progressive motion — 2026-10-28. */
:root {
  --bg: #14344f;
  --panel: #1b415f;
  --panel2: #245777;
  --text: #fffdf9;
  --muted: #c6d8e7;
  --line: rgba(208, 228, 245, .22);
  --accent-light: #ff9c5b;
  --ease-out: cubic-bezier(.22, 1, .36, 1);
}
@supports (color: color-mix(in srgb, red, white)) {
  :root { --accent-light: color-mix(in srgb, var(--accent), #ffddaa 38%); }
}
body {
  background: radial-gradient(ellipse at 0 28%, #25648b55, transparent 48%),
              radial-gradient(ellipse at 100% 66%, #e9964c12, transparent 45%), var(--bg);
}
::selection { background: #ffad6c; color: #102d46; }
.header {
  position: sticky;
  top: 0;
  background: #173b59f5;
  border-bottom-color: #cee7ff2b;
  transition: background .35s, box-shadow .35s;
}
.header.nsp-scrolled {
  background: #153750ef;
  box-shadow: 0 9px 30px #071b3026;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.brand img { box-shadow: 0 0 0 1px #c6ddf229, 0 4px 18px #06162925; }
.nav-item>a, .languages a { transition: color .25s; }
.nav-item>a:hover, .languages a:hover, .languages .selected { color: var(--accent-light); }
.subnav { background: #1d4564; box-shadow: 0 16px 40px #04172930; }
.hero {
  background: radial-gradient(ellipse at 57% 20%, #377eab45, transparent 65%),
              linear-gradient(115deg, #19476b, #153b59 60%, #204e6a);
}
.hero-image { opacity: .97; }
.hero-image:after {
  background: linear-gradient(0deg, var(--bg), transparent 38%),
              linear-gradient(90deg, #153b59, #153b5950 38%, transparent 68%);
}
.hero:after {
  background-image: linear-gradient(90deg, transparent 99.7%, #daf2ff35 100%);
  opacity: .4;
}
.hero-copy>p { color: #e2edf5; }
.hero h1 { text-shadow: 0 3px 22px #102c4925; }
.hero-bottom, .hero-caption p { color: #d2e4f2; }
.hero-caption { border-color: var(--accent-light); }
.eyebrow, .card-index, .reason-icon, .step-number, .price,
.text-link svg, .service-strip a>span, .contact-email svg,
.order-total strong, .social-card>svg { color: var(--accent-light); }
.card-index { color: #fff; box-shadow: 0 4px 18px #ed5b0845; }
.hero-copy .eyebrow:before { background: var(--accent-light); }
.section-alt {
  background: linear-gradient(130deg, #1a425f, #1b3c57 65%, #244a64);
  border-top-color: #d7edff12;
  border-bottom-color: #d7edff12;
}
.service-strip { background: linear-gradient(90deg, transparent, #a6dcff05, transparent); }
.service-strip a { transition: color .25s; }
.service-strip a svg { transition: transform .3s, color .3s; }
.service-strip a:hover { color: #ffbc8c; }
.service-strip a:hover svg { color: var(--accent-light); transform: translateX(4px); }
.section-heading h2:after {
  content: '';
  display: block;
  width: 46px;
  height: 2px;
  margin-top: 23px;
  background: linear-gradient(90deg, var(--accent-light), transparent);
}
.service-card, .product-card, .social-card, .video-card, .empty-panel,
.contact-form-panel, .order-panel, .receipt-box {
  background: linear-gradient(145deg, #27557488, #193d5e);
  border-color: #c4e0f42e;
  box-shadow: 0 12px 35px #0a233819, inset 0 1px 0 #e1f1ff08;
}
.service-card, .product-card, .social-card { border-radius: 5px; }
.service-card, .product-card, .social-card, .video-card, .office-card,
.reasons-grid article, .process-grid article {
  transition: translate .75s var(--ease-out), opacity .75s var(--ease-out),
              transform .35s var(--ease-out), border-color .3s, box-shadow .35s, background .35s;
}
.service-card, .product-card, .social-card { position: relative; }
.service-card:after, .product-card:after, .social-card:after {
  content: '';
  position: absolute;
  left: 20%; right: 20%; bottom: 0;
  height: 2px;
  background: var(--accent-light);
  opacity: 0;
  transform: scaleX(.35);
  transition: transform .45s var(--ease-out), opacity .3s;
  pointer-events: none;
}
.card-picture { overflow: hidden; padding-bottom: 17px; margin-bottom: -17px; }
.card-picture img, .product-card>img, .profile-image>img,
.process-grid article>img, .gallery-item img { transition: transform .8s var(--ease-out), filter .5s; }
.card-picture img { filter: brightness(1.08) saturate(1.06); }
.card-index { bottom: 0; z-index: 1; }
.product-card>img { filter: brightness(1.04); }
.photo-label {
  background: linear-gradient(125deg, #275475, #1c405b);
  box-shadow: 0 10px 30px #061b2d25;
}
.profile-image:after { z-index: 0; pointer-events: none; border-color: #ffb16f; }
.photo-label { z-index: 1; }
.reasons-grid article { border-color: #d5ebff26; }
.reason-icon {
  border-color: #ffad6c9c;
  background: radial-gradient(circle at 30% 20%, #ffbc7a14, transparent 80%);
  transition: transform .45s var(--ease-out), background .35s, box-shadow .35s;
}
.process-grid article { padding-bottom: 5px; }
.process-grid img { filter: brightness(1.06); }
.process-grid article:after {
  content: '';
  position: absolute;
  left: 0; bottom: 0;
  height: 1px; width: 38px;
  background: var(--accent-light);
  opacity: .7;
  transition: width .6s var(--ease-out);
}
.mission img { mix-blend-mode: normal; border-radius: 5px; opacity: .94; }
.public-form label { color: #e0ebf4; }
.public-form input, .public-form textarea {
  background: #12344e;
  border-color: #98bbd158;
  border-radius: 4px;
  box-shadow: inset 0 1px 5px #0a223317;
}
.public-form input:focus, .public-form textarea:focus {
  border-color: var(--accent-light);
  box-shadow: 0 0 0 3px #ffb16f16;
}
.office-card a { color: #fff1df; }
.button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 3px;
  border-color: transparent;
  background: linear-gradient(120deg, var(--accent-light), var(--accent));
  box-shadow: 0 6px 24px #ed5b0830, inset 0 1px 0 #ffffff32;
  transition: transform .3s var(--ease-out), box-shadow .35s, filter .35s;
}
.button:before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 30%, #fff5 48%, transparent 65%);
  transform: translateX(-125%);
  pointer-events: none;
}
.button:focus-visible { outline: 2px solid #ffcf9a; outline-offset: 5px; }
.button:hover { background: linear-gradient(120deg, var(--accent-light), var(--accent)); }
.nsp-ripple {
  position: absolute;
  width: var(--ripple-size); height: var(--ripple-size);
  left: var(--ripple-x); top: var(--ripple-y);
  margin-left: calc(var(--ripple-size) / -2);
  margin-top: calc(var(--ripple-size) / -2);
  border-radius: 50%; background: #fff5;
  pointer-events: none;
  animation: nsp-ripple .65s ease-out forwards;
}
.cta-section {
  background: radial-gradient(ellipse at 8% 100%, #43a3c038, transparent 55%),
              linear-gradient(115deg, #235e7d, #245775 55%, #26475e);
}
.footer-top p, .footer-bottom { color: #bfd4e5; }
.floating a {
  background: #2c6283eb;
  border-color: #beddf345;
  box-shadow: 0 6px 22px #071b3030;
  border-radius: 4px;
  transition: background .25s, transform .3s var(--ease-out), box-shadow .3s;
}
.nsp-load-progress, .nsp-scroll-progress {
  position: fixed; inset: 0 0 auto;
  height: 3px; z-index: 60;
  pointer-events: none;
  transform-origin: left;
  background: linear-gradient(90deg, var(--accent), #ffca89, #bcf0ff);
  box-shadow: 0 0 14px #ffba7270;
}
.nsp-load-progress {
  transform: scaleX(.08);
  transition: transform .55s var(--ease-out), opacity .4s .25s;
}
.nsp-ready .nsp-load-progress { transform: scaleX(.82); }
.nsp-loaded .nsp-load-progress { transform: scaleX(1); opacity: 0; }
.nsp-scroll-progress { height: 2px; transform: scaleX(0); z-index: 59; opacity: .9; }
.nsp-motion .nsp-reveal {
  opacity: 0;
  translate: 0 28px;
  transition: opacity .8s var(--ease-out), translate .8s var(--ease-out),
              transform .35s var(--ease-out), box-shadow .35s, border-color .3s;
  transition-delay: var(--reveal-delay, 0ms), var(--reveal-delay, 0ms), 0s, 0s, 0s;
}
.nsp-motion .nsp-reveal.nsp-shown,
.nsp-motion .nsp-reveal:focus-within { opacity: 1; translate: 0 0; }
.nsp-ready .hero-copy>.eyebrow { animation: nsp-enter .8s var(--ease-out) .06s backwards; }
.nsp-ready .hero-copy>h1 { animation: nsp-enter 1s var(--ease-out) .15s backwards; }
.nsp-ready .hero-copy>p { animation: nsp-enter 1s var(--ease-out) .27s backwards; }
.nsp-ready .hero-copy>.button-row { animation: nsp-enter 1s var(--ease-out) .38s backwards; }
.nsp-ready .hero-caption { animation: nsp-enter 1.2s var(--ease-out) .45s backwards; }
.nsp-ready .hero-image { animation: nsp-photo 1.8s var(--ease-out) both; }
.nsp-ready .page-hero { animation: nsp-enter 1s var(--ease-out) backwards; }
.nsp-ready .hero-bottom a span { animation: nsp-scroll-hint 1.8s ease-in-out 2; }
@keyframes nsp-enter { from { opacity: 0; translate: 0 24px; } to { opacity: 1; translate: 0 0; } }
@keyframes nsp-photo { from { transform: scale(1.055); filter: brightness(1.12); } to { transform: scale(1); filter: brightness(1); } }
@keyframes nsp-ripple { from { opacity: .75; transform: scale(.05); } to { opacity: 0; transform: scale(1.1); } }
@keyframes nsp-scroll-hint { 0%,100% { transform: translateY(0); } 50% { transform: translateY(5px); } }
@keyframes nsp-shine { to { transform: translateX(125%); } }
@media (hover: hover) and (pointer: fine) {
  .service-card:hover, .product-card:hover, .social-card:hover {
    border-color: #ffb07599;
    box-shadow: 0 20px 42px #071e373b, inset 0 1px 0 #ffddba22;
    transform: translateY(-7px);
  }
  .service-card:hover:after, .product-card:hover:after, .social-card:hover:after { opacity: 1; transform: scaleX(1); }
  .service-card:hover .card-picture img, .product-card:hover>img { transform: scale(1.045); filter: brightness(1.13) saturate(1.09); }
  .profile-image:hover>img { transform: translate(-3px, -3px); filter: brightness(1.08); }
  .reasons-grid article:hover { background: #afdaff08; }
  .reasons-grid article:hover .reason-icon { transform: translateY(-3px); background: #ffbd7a12; box-shadow: 0 0 22px #ffae6a16; }
  .process-grid article:hover { transform: translateY(-4px); }
  .process-grid article:hover:after { width: 100%; }
  .button:hover { transform: translateY(-3px); box-shadow: 0 10px 30px #ed5b084d; filter: brightness(1.05); }
  .button:hover:before { animation: nsp-shine .8s var(--ease-out); }
  .floating a:hover { transform: translateX(-4px); box-shadow: 0 8px 26px #ed5b0830; }
  .gallery-item { overflow: hidden; }
  .gallery-item:hover img { transform: scale(1.05); }
}
@media (max-width: 900px) {
  .nav { background: #1b4565fa; box-shadow: 0 20px 35px #0a203633; }
  .hero-image { opacity: .9; }
}
@media (max-width: 600px) {
  .hero-image { opacity: .75; }
  .hero-image:after { background: linear-gradient(0deg, var(--bg), transparent 65%), linear-gradient(90deg, #153b59dd, #153b593b); }
  .hero-copy>p { color: #e2edf6; }
  .nsp-motion .nsp-reveal { translate: 0 18px; }
  .nsp-motion .nsp-reveal.nsp-shown, .nsp-motion .nsp-reveal:focus-within { translate: 0 0; }
  .hero-copy .eyebrow { letter-spacing: 1.1px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *:before, *:after { animation: none !important; transition: none !important; }
  .nsp-load-progress, .nsp-scroll-progress, .nsp-ripple { display: none; }
  .nsp-motion .nsp-reveal { opacity: 1; translate: none; }
  .hero-image { transform: none; }
}
.button, .rich-text .button { color: #102e46; font-weight: 700; }

/* High-resolution, full-viewport homepage and three-line mobile menu. */
:root { --header-height: 92px; }
.header { height: var(--header-height); }
.hero {
  height: calc(100vh - var(--header-height));
  height: calc(100svh - var(--header-height));
  min-height: 0;
  display: flex;
  flex-direction: column;
  isolation: isolate;
}
.hero-inner {
  min-height: 0;
  flex: 1 1 0;
  padding-top: clamp(22px, 5vh, 64px);
  padding-bottom: clamp(22px, 5vh, 64px);
}
.hero-copy { padding-top: 0; }
.hero-image {
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  background-size: cover;
  background-position: center 50%;
  background-repeat: no-repeat;
  mask-image: none;
  -webkit-mask-image: none;
}
.hero-image:after {
  background: linear-gradient(90deg, #102f4be8 0%, #133955b8 29%, #153b594a 53%, #153b5905 76%),
              linear-gradient(0deg, #102e48b8 0%, #102e4820 25%, transparent 55%);
}
.hero:after { opacity: .16; }
.hero h1 { font-size: clamp(44px, 5.1vw, 78px); }
.hero-copy>p { color: #f1f6fb; text-shadow: 0 1px 7px #09223d66; }
.hero-bottom {
  min-height: 54px;
  height: clamp(54px, 8vh, 76px);
  flex: 0 0 auto;
}
.hero-caption { bottom: 70px; text-shadow: 0 2px 10px #102a4255; }
@media (max-width: 900px) {
  :root { --header-height: 80px; }
  .menu-toggle {
    display: flex;
    width: 44px;
    height: 44px;
    padding: 8px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    background: transparent;
  }
  .menu-toggle span {
    display: block;
    width: 25px;
    height: 2px;
    margin: 0;
    flex-shrink: 0;
    background: #EF671E;
    border-radius: 2px;
    transition: transform .28s ease, opacity .2s ease;
  }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; transform: scaleX(.3); }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
  .menu-toggle:focus-visible { outline: 2px solid #EF671E; outline-offset: 3px; }
  .nav { top: var(--header-height); max-height: calc(100svh - var(--header-height)); overflow-y: auto; }
  .hero-image { width: 100%; opacity: 1; background-position: 72% center; }
  .hero-copy { width: 76%; }
  .hero h1 { font-size: clamp(42px, 6.5vw, 64px); }
}
@media (max-width: 600px) {
  .hero-inner { padding-top: 22px; padding-bottom: 24px; }
  .hero-copy { width: 100%; padding-top: 0; }
  .hero-image { width: 100%; opacity: 1; background-position: 77% center; }
  .hero-image:after {
    background: linear-gradient(90deg, #123653b8, #12365355 68%, #12365320),
                linear-gradient(0deg, #12324ecd, #12324e12 50%, #12324e10);
  }
  .hero h1 { font-size: clamp(38px, 11vw, 48px); line-height: 1.17; margin-bottom: 24px; }
  .hero-copy>p { color: #fff; max-width: 340px; text-shadow: 0 2px 8px #071a2dcc; }
  .hero-copy .eyebrow { text-shadow: 0 1px 5px #102e4d; }
  .hero-bottom { height: 54px; min-height: 54px; }
  .hero .button-row { margin-top: 26px; }
}
@media (max-height: 760px) and (min-width: 901px) {
  .hero-inner { padding-top: 18px; padding-bottom: 18px; }
  .hero h1 { font-size: clamp(42px, 8vh, 64px); margin-bottom: 20px; }
  .hero-copy .eyebrow { margin-bottom: 18px; }
  .hero .button-row { margin-top: 24px; }
  .hero-bottom { height: 54px; min-height: 54px; }
  .hero-caption { bottom: 45px; }
}
@media (max-height: 660px) and (max-width: 600px) {
  .hero-inner { padding-top: 16px; padding-bottom: 16px; }
  .hero h1 { font-size: clamp(30px, 9.5vw, 40px); margin-bottom: 18px; }
  .hero-copy .eyebrow { margin-bottom: 14px; font-size: 8px; }
  .hero-copy>p { font-size: 13px; margin-bottom: 14px; }
  .hero .button-row { margin-top: 18px; gap: 12px 20px; }
  .hero .button { min-height: 43px; padding-top: 10px; padding-bottom: 10px; }
  .hero-bottom { height: 44px; min-height: 44px; }
}
@media (max-height: 520px) and (min-width: 601px) {
  .hero-inner { padding-top: 10px; padding-bottom: 10px; }
  .hero-copy { width: 83%; }
  .hero-copy .eyebrow { margin-bottom: 9px; font-size: 8px; }
  .hero h1 { font-size: clamp(26px, 7.7vh, 38px); margin-bottom: 10px; }
  .hero-copy>p { font-size: 12px; line-height: 1.5; margin-bottom: 10px; max-width: 470px; }
  .hero .button-row { margin-top: 12px; }
  .hero .button { min-height: 38px; padding: 8px 16px; font-size: 11px; }
  .hero-bottom { height: 35px; min-height: 35px; }
  .hero-caption { display: none; }
}
@media (max-height: 520px) and (min-width: 601px) {
  .hero-image { background-position: 72% top; }
}
