@font-face {
  font-family: 'Manrope';
  src: url('assets/fonts/Manrope-Variable.ttf') format('truetype');
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

:root {
  --sans: 'Manrope', Arial, Helvetica, sans-serif;
  --serif: 'Manrope', Arial, Helvetica, sans-serif;
  --ink: #151719;
  --dark: #080b0d;
  --paper: #ffffff;
  --red: #da1e2b;
  --muted: #686e73;
  --line: #dfe2e4;
  --green: #007047;
}

html {scroll-padding-top: 105px}
body {font-weight: 400; font-size: 15px; -webkit-font-smoothing: antialiased}
h1,h2,h3,.quote {font-family: var(--sans); font-weight: 500; letter-spacing: -.055em}
h1 em,h2 em {font-style: normal}
h1 {line-height: 1.02}
h2 {font-size: clamp(34px,4.1vw,60px); line-height: 1.08}
h3 {font-weight: 600; letter-spacing: -.035em}
p {line-height: 1.8}
.container {width: min(1360px,calc(100% - 112px))}
.section {padding: 110px 0}
.eyebrow {font-size: 10px; font-weight: 700; letter-spacing: .2em; line-height: 1.5}
.lead {font-size: 19px; font-weight: 400}
.text-link {font-size: 12px; border-bottom-color: #a4aaaf; padding-bottom: 8px}
.button {background: var(--red); border-color: var(--red); min-height: 54px; border-radius: 3px; font-size: 12px; font-weight: 650; padding: 17px 25px; gap: 30px; transition: background .2s,border-color .2s,color .2s}
.button:hover {background:#b91622; border-color:#b91622}
.button-outline {background:transparent; color:var(--ink); border-color:var(--ink)}
.button-outline:hover {background:var(--ink);border-color:var(--ink);color:white}
.button-light {background:white;border-color:white;color:var(--ink)}
.button-light:hover {background:#e8eaec;border-color:#e8eaec;color:var(--ink)}
.button-small {padding:13px 18px;font-size:11px;min-height:46px;gap:22px}
.preview-bar {background:#eceef0;color:#50565a;font-size:9px;padding:7px 20px;min-height:30px}
.preview-bar button {font-size:9px;border-color:#a0a6aa}
.status-dot {background:var(--green)}
.review-panel {background:#f0f3f5}
.site-header {background:white;color:var(--ink);border-bottom:1px solid var(--line)}
.nav-wrap {padding:15px 44px;gap:28px;max-width:1600px;min-height:89px}
.brand {width:126px}
.brand img {width:126px;height:57px}
.site-header nav {gap:25px}
.site-header nav a {font-size:12px;font-weight:550;letter-spacing:-.02em;padding:12px 0}
.site-header nav a:hover,.site-header nav a[aria-current=page] {border-color:var(--red)}
.nav-end {gap:22px}
.locale {font-size:10px;border-color:#bfc5c8}
.is-home .site-header {background:rgba(8,11,13,.3);color:white;backdrop-filter:blur(9px);border-color:#ffffff2a}
.is-home .hero {margin-top:-89px}
.hero {height:calc(100svh - 30px);min-height:660px;max-height:1100px;background:#161d1b;align-items:flex-end}
.hero-image {object-position: center 54%}
.hero:after {background:linear-gradient(180deg,rgba(2,6,8,.18) 0%,rgba(2,6,8,.08) 23%,rgba(2,6,8,.6) 75%,rgba(2,6,8,.88) 100%)}
.hero-content {padding-top:160px;padding-bottom:120px}
.hero .eyebrow {font-size:11px;letter-spacing:.25em;margin-bottom:26px}
.hero h1 {font-size:clamp(66px,7.9vw,124px);font-weight:500;letter-spacing:-.065em;line-height:1.01;text-transform:none;max-width:1100px;margin-bottom:26px}
.hero h1 em {color:white;font-style:normal}
.hero-copy {max-width:535px;font-size:14px;line-height:1.75;color:#e7ebed;font-weight:400}
.hero .actions {margin-top:29px;gap:13px}
.hero .button {background:white;border-color:white;color:var(--ink)}
.hero .button:hover {background:#e5e9ec;border-color:#e5e9ec}
.hero .button-outline {background:transparent;border-color:#ffffffad;color:white}
.hero .button-outline:hover {background:#ffffff19;border-color:white}
.hero-foot {bottom:28px;border-top:1px solid #ffffff42;padding-top:19px;font-size:9px;letter-spacing:.12em;align-items:center}
.hero-foot a {display:flex;align-items:center;gap:18px}
.hero-foot strong {font-weight:600;letter-spacing:.05em}
.italy-line {gap:0}
.italy-line i {height:3px;width:16px}
.italy-line i:first-child {background:#009358}
.italy-line i:last-child {background:#f02130}
.brand-statement {padding:80px 0 90px}
.statement-grid {display:grid;grid-template-columns:1.2fr .8fr;gap:110px;align-items:end}
.statement-grid h2 {font-size:clamp(38px,4.7vw,68px);max-width:780px;margin-bottom:0;font-weight:500;letter-spacing:-.06em}
.statement-grid p {font-size:14px;line-height:1.9;color:var(--muted);max-width:440px}
.section-head {margin-bottom:40px;gap:50px}
.section-head p {font-size:14px}
.section-head h2 {font-size:clamp(36px,4vw,58px);font-weight:500}
.model-grid {gap:38px 28px}
.home-models {grid-template-columns:repeat(2,minmax(0,1fr))}
.model-card {border:0;padding-bottom:0}
.model-card .photo {aspect-ratio:1.22;border-radius:4px;margin-bottom:22px;background:#eceff1}
.model-card .photo img {transition:transform .65s;object-position:center}
.model-card h3 {font-family:var(--sans);font-size:30px;font-weight:600;letter-spacing:-.055em;margin-bottom:7px}
.model-card p {font-size:10px;color:#5e666c;line-height:1.5}
.card-label {top:17px;left:17px;border-radius:2px;background:#fffefb;font-size:8px;font-weight:600;letter-spacing:.08em;padding:6px 9px}
.round-arrow {height:38px;width:38px;border-radius:3px;font-size:18px}
.model-card:hover .round-arrow {background:#17191c}
.photo-placeholder {background:#e8ecee!important;color:var(--ink)}
.photo-placeholder strong {font-family:var(--sans);font-size:35px;font-weight:500;letter-spacing:-.06em}
.photo-placeholder>span:not(.card-label) {color:#69737a;font-size:9px}
.dark-section {background:#0b0e10;color:#fff}
.dark-section .eyebrow {color:#aab3ba}
.dark-section .lead {color:#c8ced3;font-size:17px}
.layout-list {border-color:#3c4348}
.layout-row {border-color:#3c4348;padding:25px 0}
.layout-row strong {font-size:18px;font-weight:500;letter-spacing:-.04em}
.layout-row span {color:#b7c0c7;font-size:11px}
.section-caption {color:#aab4ba;font-size:11px;line-height:1.8}
.layout-specs {display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:60px}
.layout-spec {border-top:1px solid #3f464c;padding-top:23px}
.layout-spec .layout-number {display:block;font-size:76px;line-height:1;font-weight:350;letter-spacing:-.075em;margin:26px 0 12px}
.layout-spec .layout-number small {font-size:24px;letter-spacing:-.03em;margin-left:5px;font-weight:400}
.layout-spec h3 {font-size:18px;margin:0;color:white;font-weight:500;letter-spacing:-.02em}
.layout-spec p {font-size:11px;color:#aab4bc;max-width:260px;line-height:1.8}
.layout-spec .eyebrow {font-size:9px;color:#c6cdd2;margin-bottom:0}
.split {gap:95px}
.split .photo-tall {aspect-ratio:.98;border-radius:3px}
.split p {font-size:14px;line-height:1.9}
.story-panel {background:#f2f4f5}
.story-panel h2 {font-weight:500}
.support-band {padding:72px 0;background:#f3f5f6;border-top:0}
.support-band h2 {font-size:40px;letter-spacing:-.05em}
.support-band p {font-size:13px}
.page-head {padding:66px 0 55px;background:#f4f5f6;border:0}
.page-head h1 {font-size:clamp(46px,6vw,85px);font-weight:450;letter-spacing:-.06em;line-height:1.04}
.page-head .lead {font-size:16px;color:#5c656b;line-height:1.85}
.breadcrumb {font-size:10px;color:#7c8388;margin-bottom:32px}
.breadcrumb a {text-decoration:none}
.filter {font-size:11px;border-radius:3px;padding:11px 20px;font-weight:550;min-height:42px}
.filters {gap:9px;margin:24px 0 35px}
.search-box {max-width:600px;margin-top:0}
.search-box input {font-size:13px;border-radius:3px;background:#f7f8f9;padding:16px}
.result-count {font-size:11px}
.product-top {padding-bottom:75px}
.product-grid {gap:70px;grid-template-columns:1.15fr 1fr}
.product-media img {border-radius:4px;aspect-ratio:1.08}
.product-summary h1 {font-family:var(--sans);font-weight:500;letter-spacing:-.065em;font-size:80px;line-height:1.05}
.product-summary .lead {font-size:15px;line-height:1.85}
.product-summary .eyebrow {font-size:9px}
.badge {font-size:10px;border-radius:2px;padding:5px 10px;font-weight:500;background:#f4f6f7;border-color:#e4e8eb}
.spec-grid strong {font-family:var(--sans);font-size:23px;font-weight:500;letter-spacing:-.06em}
.spec-grid span {font-size:8px;letter-spacing:.09em}
.spec-note {font-size:10px;line-height:1.7}
.detail-block h2,.prose h2 {font-family:var(--sans);font-size:39px;font-weight:500;letter-spacing:-.055em;line-height:1.15}
.detail-block p,.detail-block li,.prose p,.prose li {font-size:14px;line-height:1.9}
.detail-nav a {font-size:11px}
.notice {background:#f1f4f6;border-color:#78909c;border-radius:0 3px 3px 0;font-size:11px;line-height:1.8}
.notice p {font-size:11px}
.zoom-label {font-size:9px;border-radius:2px}
.side-note {font-size:11px;line-height:1.9}
summary {font-size:15px;font-weight:550;letter-spacing:-.02em}
details p,details li {font-size:13px}
.form-panel {border-radius:4px;background:#f8f9fa;border:0;padding:38px}
.field label {font-size:10px;font-weight:650}
.field input,.field select,.field textarea {font-size:13px;background:#fff;border-radius:3px;border-color:#d6dde1;padding:14px}
.field textarea {line-height:1.7}
.config-summary {border-radius:4px;background:#111619;padding:36px}
.config-summary h2 {font-family:var(--sans);font-size:42px;letter-spacing:-.06em;font-weight:500}
.config-summary dt {color:#a8b5bd;font-size:10px}
.config-summary dd {font-size:14px}
.config-summary .tiny {color:#b6c2c9!important;font-size:11px;line-height:1.8}
.config-steps legend {font-size:16px;font-weight:500;letter-spacing:-.025em}
.check-field {font-size:12px}
.checkbox-text span {font-size:10px}
.site-footer {background:#080b0d;color:#edf0f2;padding-top:78px}
.footer-brand {display:block;width:140px}
.footer-brand img {width:140px;height:auto}
.footer-brand span {font-size:8px;font-style:normal;letter-spacing:.16em;margin-top:14px;color:#9aa8b0}
.footer-grid {gap:55px}
.footer-grid h2 {font-size:9px;color:#88969e;letter-spacing:.15em}
.footer-grid>div>a:not(.footer-brand) {font-size:11px;color:#dce2e6}
.footer-grid p {font-size:12px;line-height:1.8;color:#9eabb3}
.footer-bottom {border-color:#293136;color:#7f8d95;font-size:9px;line-height:1.8}
.quote {font-weight:400;letter-spacing:-.055em}
.empty {border-radius:3px;background:#f6f8f9;border:0}
.empty h3 {font-weight:500}
.dialog-close {border-radius:3px}

@media (min-width:1500px) {.hero h1{font-size:124px}}
@media (max-width:1200px) {
  .container{width:calc(100% - 88px)}
  .nav-wrap{padding-inline:30px;gap:22px}
  .site-header nav{gap:20px}
  .site-header nav a{font-size:11px}
  .nav-end{gap:16px}
  .nav-end .button{font-size:10px;padding-inline:15px}
  .statement-grid{gap:70px}
  .product-grid{gap:40px}
  .split{gap:65px}
}
@media (max-width:900px) {
  .nav-wrap{height:82px;min-height:82px}
  .site-header nav{top:82px;background:white;color:var(--ink);border-bottom:1px solid var(--line);padding:20px 32px 30px}
  .is-home .site-header nav{background:#101518;color:white;border-color:#333c41}
  .site-header nav a{font-size:18px}
  .mobile-toggle span:not(.sr-only){background:var(--ink)}
  .is-home .mobile-toggle span:not(.sr-only){background:white}
  .is-home .hero{margin-top:-82px}
  .hero{min-height:650px;height:calc(92svh - 30px)}
  .hero h1{font-size:80px}
  .hero-content{padding-bottom:105px}
  .section{padding:80px 0}
  .statement-grid{gap:40px;grid-template-columns:1.15fr .85fr}
  .statement-grid h2{font-size:43px}
  .home-models .model-card:last-child{display:flex}
  .layout-specs{gap:25px}
  .layout-spec .layout-number{font-size:64px}
  .product-grid{grid-template-columns:1fr}
  .product-media img{aspect-ratio:1.6}
  .product-summary{max-width:740px}
  .product-summary h1{font-size:70px}
  .split{gap:45px}
}
@media (max-width:600px) {
  .container{width:calc(100% - 40px)}
  .preview-bar{font-size:7px;padding:6px 12px;min-height:26px;gap:5px}
  .preview-bar button{font-size:7px;margin-left:0}
  .nav-wrap{height:74px;min-height:74px;padding:10px 18px;gap:10px}
  .brand,.brand img{width:96px}
  .brand img{height:45px}
  .nav-end{gap:0}
  .nav-end .locale{display:none}
  .nav-end .button{font-size:9px;padding:11px 12px;min-height:40px;max-width:160px;gap:10px}
  .mobile-toggle{padding:10px 7px}
  .mobile-toggle span:not(.sr-only){width:22px}
  .site-header nav{top:74px;padding-inline:22px}
  .site-header nav a{font-size:17px}
  .is-home .hero{margin-top:-74px}
  .hero{height:calc(100svh - 26px);min-height:700px;max-height:950px}
  .hero-image{object-position:58% center}
  .hero:after{background:linear-gradient(180deg,#03090e30 0%,#03090e12 22%,#03090e8c 61%,#03090eef 100%)}
  .hero-content{padding-top:160px;padding-bottom:115px}
  .hero .eyebrow{font-size:8px;letter-spacing:.18em;margin-bottom:18px}
  .hero h1{font-size:clamp(43px,12.2vw,64px);letter-spacing:-.065em;line-height:1.03;margin-bottom:23px}
  .hero-copy{font-size:12px;line-height:1.8;max-width:320px}
  .hero .actions{flex-direction:row;max-width:none;align-items:stretch;gap:10px;margin-top:24px}
  .hero .button{font-size:10px;padding:14px 15px;gap:15px;min-height:47px}
  .hero-foot{font-size:7px;letter-spacing:.07em;bottom:27px;padding-top:17px;gap:15px}
  .hero-foot span:last-child{max-width:none}
  .hero-foot a{gap:9px;font-size:8px}
  .hero-foot .italy-line{display:none}
  .brand-statement{padding:56px 0}
  .statement-grid{grid-template-columns:1fr;gap:25px}
  .statement-grid h2{font-size:37px;line-height:1.12}
  .statement-grid p{font-size:13px;margin-bottom:20px}
  .section{padding:60px 0}
  .section-head{margin-bottom:28px}
  .section-head h2,h2{font-size:37px;line-height:1.1}
  .section-head p{font-size:13px}
  .model-grid{gap:28px 16px}
  .home-models{grid-template-columns:1fr;gap:35px}
  .home-models .model-card .photo{aspect-ratio:1.2}
  .model-card .photo{border-radius:3px;aspect-ratio:.9;margin-bottom:16px}
  .model-card h3{font-size:24px}
  .model-card p{font-size:8px}
  .home-models .model-card h3{font-size:30px}
  .home-models .model-card p{font-size:10px}
  .card-label{font-size:6px;left:9px;top:9px;padding:5px 7px}
  .round-arrow{width:30px;height:30px;font-size:16px}
  .photo-placeholder strong{font-size:25px}
  .photo-placeholder>span:not(.card-label){font-size:7px}
  .layout-specs{grid-template-columns:1fr;margin-top:35px;gap:24px}
  .layout-spec{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;padding-top:22px}
  .layout-spec .layout-number{grid-column:2;grid-row:1/4;font-size:65px;margin:0;align-self:center;justify-self:end}
  .layout-spec .layout-number small{font-size:19px}
  .layout-spec h3{font-size:16px}
  .layout-spec p{font-size:10px;margin-bottom:0}
  .layout-spec .eyebrow{font-size:7px}
  .layout-row strong{font-size:15px}
  .layout-row span{font-size:10px}
  .dark-section .lead{font-size:14px}
  .split{gap:30px;grid-template-columns:1fr}
  .split .photo-tall{aspect-ratio:1.18}
  .split p{font-size:13px}
  .support-band{padding:48px 0}
  .support-band h2{font-size:32px}
  .support-band p{font-size:12px}
  .page-head{padding:38px 0}
  .page-head h1{font-size:46px;line-height:1.08}
  .page-head .lead{font-size:13px}
  .breadcrumb{font-size:8px;margin-bottom:24px}
  .eyebrow{font-size:8px}
  .filter{font-size:9px;padding:10px 13px;min-height:37px}
  .filters{gap:7px}
  .search-box input{font-size:12px}
  .product-top{padding-top:28px;padding-bottom:45px}
  .product-summary h1{font-size:58px}
  .product-summary .lead{font-size:13px}
  .product-summary .actions .button{font-size:10px;padding:14px 17px;gap:15px}
  .product-media img{aspect-ratio:1.12}
  .product-grid{gap:29px}
  .spec-grid strong{font-size:20px}
  .spec-grid span{font-size:7px}
  .detail-block h2,.prose h2{font-size:31px}
  .detail-block p,.detail-block li,.prose p,.prose li{font-size:13px}
  .detail-nav a{font-size:9px}
  .form-panel{padding:23px}
  .field input,.field select,.field textarea{font-size:12px}
  .field label{font-size:9px}
  .config-summary{padding:26px}
  .config-summary h2{font-size:36px}
  .config-steps legend{font-size:14px}
  .footer-grid{gap:35px 22px}
  .footer-brand,.footer-brand img{width:125px}
  .footer-brand span{font-size:7px}
  .footer-grid h2{font-size:8px}
  .footer-grid>div>a:not(.footer-brand){font-size:9px}
  .footer-bottom{font-size:8px;border-color:#293136;gap:12px}
}
@media(prefers-reduced-motion:reduce){.button,.model-card .photo img{transition:none}}

/* A light header keeps the original red/green logo legible on every photograph. */
.is-home .site-header{background:rgba(255,255,255,.97);color:var(--ink);border-color:var(--line)}
.is-home .site-header nav{background:white;color:var(--ink);border-color:var(--line)}
.is-home .mobile-toggle span:not(.sr-only){background:var(--ink)}
