.nfc-home { --home-gold:#c9a45d; --home-gold-dark:#8e692d; --home-night:#0e0e0c; background:#f7f3ea; }
.nfc-home .eyebrow { color:var(--home-gold-dark); }
.nfc-home h1,.nfc-home h2,.nfc-home h3,.nfc-home p { overflow-wrap:break-word; }
.home-mobile-menu { position:relative; z-index:2; display:none; margin-left:auto; }
.home-mobile-menu summary { display:flex; align-items:center; gap:9px; min-height:42px; padding:0 13px; color:#4e4942; border:1px solid rgba(17,16,14,.12); border-radius:11px; background:rgba(255,255,255,.55); cursor:pointer; font-size:13px; font-weight:700; list-style:none; }
.home-mobile-menu summary::-webkit-details-marker { display:none; }
.home-mobile-menu summary span { color:var(--home-gold-dark); font-size:17px; line-height:1; transition:transform .2s ease; }
.home-mobile-menu[open] summary span { transform:rotate(45deg); }
.home-mobile-menu-panel { position:absolute; top:calc(100% + 11px); right:0; width:min(280px,calc(100vw - 34px)); padding:8px; display:grid; border:1px solid rgba(17,16,14,.11); border-radius:15px; background:rgba(250,247,240,.98); box-shadow:0 18px 42px rgba(17,16,14,.16); }
.home-mobile-menu-panel a { display:flex; justify-content:space-between; gap:20px; padding:12px 13px; color:#4f4941; border-radius:9px; font-size:14px; font-weight:650; }
.home-mobile-menu-panel a:hover,.home-mobile-menu-panel a:focus-visible { color:var(--ink); background:#eee6d8; }
.home-mobile-menu-panel a:nth-last-child(-n+2) { color:#171510; }
.home-mobile-menu-panel a span { color:var(--home-gold-dark); }
.button-gold { color:#15120d; background:var(--home-gold); box-shadow:0 12px 28px rgba(142,105,45,.22); }
.button-gold:hover { color:#15120d; background:#dfc17f; }
.nfc-text-link { display:inline-flex; align-items:center; gap:9px; padding-bottom:4px; border-bottom:1px solid currentColor; font-size:14px; font-weight:700; }
.nfc-text-link span { color:var(--home-gold-dark); }

.nfc-hero { padding:146px 0 82px; background:radial-gradient(circle at 4% 2%,#ead8ae 0,transparent 31rem),#f7f3ea; }
.nfc-hero-layout { display:grid; grid-template-columns:.88fr 1.12fr; gap:58px; align-items:center; }
.nfc-kicker { width:max-content; display:inline-flex; align-items:center; gap:10px; margin:0; padding:8px 11px; color:#5e564c; border:1px solid rgba(17,16,14,.15); border-radius:999px; background:rgba(255,255,255,.38); font:500 10px var(--mono); letter-spacing:.075em; text-transform:uppercase; }
.nfc-kicker span { width:6px; height:6px; border-radius:50%; background:var(--home-gold); box-shadow:0 0 0 5px rgba(201,164,93,.13); }
.nfc-hero h1 { max-width:570px; margin:24px 0 25px; font-size:clamp(58px,6.4vw,90px); font-weight:500; letter-spacing:-.052em; line-height:.96; }
.nfc-hero h1 em,.nfc-section-heading h2 em,.nfc-product-copy h2 em,.nfc-engine-copy h2 em,.nfc-room-figure h2 em,.nfc-offer h2 em,.nfc-contact h2 em { color:var(--home-gold-dark); font-family:var(--serif); font-weight:400; }
.nfc-hero-copy > p:not(.nfc-kicker) { max-width:530px; margin:0; color:var(--muted); font-size:18px; line-height:1.7; }
.nfc-hero-actions { display:flex; align-items:center; gap:23px; margin-top:31px; }
.nfc-facts { display:grid; grid-template-columns:repeat(3,1fr); margin:48px 0 0; padding-top:23px; border-top:1px solid var(--line); }
.nfc-facts div { padding-right:15px; }
.nfc-facts dt { font-size:13px; font-weight:700; }
.nfc-facts dd { margin:4px 0 0; color:var(--muted); font-size:11px; line-height:1.4; }
.nfc-hero-image { position:relative; min-height:620px; margin:0; overflow:hidden; border-radius:6px 26px 6px 26px; background:#d8cfbf; box-shadow:24px 26px 0 #e8ddc7; }
.nfc-hero-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nfc-hero-image::after { content:""; position:absolute; inset:56% 0 0; background:linear-gradient(transparent,rgba(13,13,11,.82)); }
.nfc-hero-image figcaption { position:absolute; z-index:1; right:27px; bottom:24px; left:27px; display:grid; grid-template-columns:34px 1fr; gap:14px; align-items:start; color:#fff; }
.nfc-hero-image figcaption > span { padding-top:3px; color:#e8c982; font:500 10px var(--mono); }
.nfc-hero-image figcaption p { max-width:390px; margin:0; color:#e6e0d5; font-size:13px; line-height:1.5; }
.nfc-hero-image figcaption strong { display:block; color:#fff; font-size:16px; }
.nfc-marquee { overflow:hidden; padding:18px 0; color:#f4efe4; background:var(--home-night); }
.nfc-marquee div { width:max-content; display:flex; align-items:center; gap:25px; margin:auto; font:500 13px var(--mono); text-transform:uppercase; letter-spacing:.045em; }
.nfc-marquee i { color:var(--home-gold); font-style:normal; }

.nfc-how { padding:126px 0; background:#fff; }
.nfc-section-heading { max-width:880px; }
.nfc-section-heading h2,.nfc-product-copy h2,.nfc-engine-copy h2,.nfc-offer h2,.nfc-contact h2 { margin:15px 0 0; font-size:clamp(47px,5.4vw,73px); font-weight:500; letter-spacing:-.045em; line-height:1.02; }
.nfc-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:65px 0 0; padding:0; border-top:1px solid var(--line); list-style:none; }
.nfc-steps li { min-height:300px; padding:25px 34px 30px 0; }
.nfc-steps li + li { padding-left:34px; border-left:1px solid var(--line); }
.nfc-steps li > span { color:var(--home-gold-dark); font:500 10px var(--mono); }
.nfc-steps h3 { max-width:290px; margin:72px 0 13px; font-size:25px; letter-spacing:-.035em; line-height:1.1; }
.nfc-steps p { max-width:310px; margin:0; color:var(--muted); font-size:14px; line-height:1.7; }

.nfc-product { padding:126px 0; background:#ece5d8; }
.nfc-editorial-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:86px; align-items:center; }
.nfc-product-image { margin:0; }
.nfc-product-image img { width:100%; aspect-ratio:1.13; object-fit:cover; border-radius:24px 4px 24px 4px; box-shadow:-20px 20px 0 rgba(201,164,93,.25); }
.nfc-product-image figcaption { margin-top:14px; color:#756d61; font:500 9px var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.nfc-product-copy > p:not(.eyebrow) { max-width:510px; margin:26px 0; color:var(--muted); font-size:16px; line-height:1.75; }
.nfc-product-copy ul { display:grid; gap:13px; margin:0 0 31px; padding:0; list-style:none; }
.nfc-product-copy li { display:flex; gap:11px; font-size:14px; font-weight:600; }
.nfc-product-copy li span { color:var(--home-gold-dark); }

.nfc-engine { padding:126px 0; color:#f2ede3; background:var(--home-night); }
.nfc-engine-grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:72px; align-items:center; }
.nfc-engine .eyebrow { color:var(--home-gold); }
.nfc-engine-copy h2 em { color:#e8cb8d; }
.nfc-engine-copy > p:not(.eyebrow) { max-width:520px; margin:25px 0 35px; color:#aaa397; font-size:16px; line-height:1.75; }
.nfc-engine-list { border-top:1px solid rgba(255,255,255,.13); }
.nfc-engine-list p { display:grid; grid-template-columns:31px 1fr; margin:0; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.nfc-engine-list p > span { color:var(--home-gold); font:500 9px var(--mono); }
.nfc-engine-list strong { font-size:14px; }
.nfc-engine-list small { grid-column:2; margin-top:4px; color:#8f897f; font-size:12px; line-height:1.5; }
.nfc-engine-image { position:relative; min-height:510px; margin:0; overflow:hidden; border:1px solid rgba(201,164,93,.28); border-radius:4px 24px 4px 24px; background:#181713; }
.nfc-engine-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nfc-engine-image::after { content:""; position:absolute; inset:62% 0 0; background:linear-gradient(transparent,rgba(10,10,9,.85)); }
.nfc-engine-image figcaption { position:absolute; z-index:1; right:24px; bottom:22px; left:24px; display:flex; justify-content:space-between; gap:18px; align-items:end; }
.nfc-engine-image figcaption span { color:#e8cb8d; font:500 9px var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.nfc-engine-image figcaption p { max-width:350px; margin:0; color:#fff; font-size:14px; text-align:right; }

.nfc-room { padding:126px 0; background:#fff; }
.nfc-room-figure { position:relative; min-height:690px; margin:0; overflow:hidden; border-radius:24px; background:#26231e; }
.nfc-room-figure > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nfc-room-figure::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,10,9,.83),rgba(10,10,9,.12) 70%); }
.nfc-room-figure figcaption { position:absolute; z-index:1; left:55px; bottom:55px; max-width:650px; color:#fff; }
.nfc-room-figure .eyebrow { color:#e5c680; }
.nfc-room-figure h2 { margin:13px 0 29px; font-size:clamp(48px,5.3vw,72px); font-weight:500; letter-spacing:-.045em; line-height:1.02; }
.nfc-room-figure h2 em { color:#e8cb8d; }
.nfc-offer { padding:119px 0; background:#f7f3ea; }
.nfc-offer-layout { display:grid; grid-template-columns:1.15fr .85fr; gap:90px; align-items:end; }
.nfc-offer-copy > p { max-width:490px; margin:0 0 26px; color:var(--muted); font-size:16px; line-height:1.75; }
.nfc-contact { padding:0; color:#f4efe5; background:var(--home-night); }
.nfc-contact-box { display:grid; grid-template-columns:1.2fr .8fr; gap:75px; align-items:end; padding:82px 0; }
.nfc-contact .eyebrow { color:var(--home-gold); }
.nfc-contact h2 em { color:#e8cb8d; }
.nfc-contact-box > div:last-child p { margin:0 0 28px; color:#aaa397; font-size:15px; line-height:1.7; }

@media (max-width:980px) {
  .nfc-hero-layout,.nfc-editorial-grid,.nfc-engine-grid,.nfc-offer-layout,.nfc-contact-box { grid-template-columns:1fr; }
  .nfc-hero-layout { gap:50px; }
  .nfc-hero-image { min-height:590px; }
  .nfc-editorial-grid,.nfc-engine-grid,.nfc-offer-layout,.nfc-contact-box { gap:48px; }
  .nfc-product-copy { max-width:680px; }
  .nfc-room-figure { min-height:610px; }
}
@media (max-width:900px) {
  .home-mobile-menu { display:block; }
}
@media (max-width:700px) {
  .nfc-hero { padding:122px 0 64px; }
  .nfc-hero h1 { font-size:clamp(52px,15vw,70px); line-height:.98; }
  .nfc-hero-copy > p:not(.nfc-kicker) { font-size:16px; }
  .nfc-hero-actions { align-items:flex-start; flex-direction:column; }
  .nfc-facts { grid-template-columns:1fr; gap:15px; }
  .nfc-facts div { display:grid; grid-template-columns:100px 1fr; }
  .nfc-facts dd { margin:0; }
  .nfc-hero-image { min-height:480px; border-radius:5px 19px 5px 19px; box-shadow:13px 14px 0 #e8ddc7; }
  .nfc-marquee div { padding:0 16px; font-size:11px; }
  .nfc-how,.nfc-product,.nfc-engine,.nfc-room,.nfc-offer { padding:82px 0; }
  .nfc-section-heading h2,.nfc-product-copy h2,.nfc-engine-copy h2,.nfc-offer h2,.nfc-contact h2 { font-size:46px; line-height:1.05; }
  .nfc-steps { grid-template-columns:1fr; margin-top:45px; }
  .nfc-steps li { min-height:auto; padding:25px 0 31px; }
  .nfc-steps li + li { padding-left:0; border-top:1px solid var(--line); border-left:0; }
  .nfc-steps h3 { margin:30px 0 10px; }
  .nfc-product-image img { box-shadow:-11px 12px 0 rgba(201,164,93,.25); }
  .nfc-engine-image { min-height:380px; }
  .nfc-engine-image figcaption { align-items:start; flex-direction:column; }
  .nfc-engine-image figcaption p { text-align:left; }
  .nfc-room-figure { min-height:570px; }
  .nfc-room-figure::after { background:linear-gradient(0deg,rgba(10,10,9,.88),rgba(10,10,9,.05) 76%); }
  .nfc-room-figure figcaption { right:24px; bottom:28px; left:24px; }
  .nfc-room-figure h2 { font-size:47px; }
  .nfc-contact-box { padding:70px 0; }
}
@media (max-width:620px) {
  .nfc-home .nav-actions { display:none; }
}
@media (prefers-reduced-motion:reduce) { .nfc-home * { scroll-behavior:auto!important; } }
