
:root{
  --ivory:#F6F1E8;
  --paper:#EEE6DA;
  --sand:#DDD0BF;
  --stone:#CFC3B4;
  --taupe:#9B8F82;
  --bronze:#A88761;
  --ink:#2B2825;
  --muted:#6F685F;
  --line:rgba(43,40,37,.12);
  --softline:rgba(43,40,37,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,Arial,sans-serif;letter-spacing:.01em}
h1,h2,h3,h4,.brand,.display,.offer-name{font-family:Georgia,'Times New Roman',serif;font-weight:400}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.wrap{width:min(1560px,100% - 64px);margin:0 auto}
.top{position:fixed;top:0;left:0;right:0;height:78px;z-index:30;background:rgba(246,241,232,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--softline)}
.top-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:14px;font-size:22px;letter-spacing:.18em}
.brand img{width:22px;height:22px;object-fit:contain}
.nav,.langs{display:flex;gap:26px;font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.nav{justify-self:center}
.langs{justify-self:end;gap:12px}
.nav a,.langs a{padding-bottom:4px;border-bottom:1px solid transparent}
.nav a.active,.langs a.active{border-color:var(--ink)}
main{padding-top:78px}
section{border-bottom:1px solid var(--softline)}
.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
.hero{display:grid;grid-template-columns:.78fr 1.22fr;min-height:100vh}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:7vw 6vw 6vw max(32px,6vw)}
.hero-copy h1{font-size:clamp(68px,8vw,148px);line-height:.92;letter-spacing:-.045em;margin:18px 0 18px;max-width:8ch}
.hero-copy .lead{font-size:18px;line-height:1.72;color:var(--muted);max-width:430px;margin:0}
.inline-stack{margin:22px 0 0;display:grid;gap:8px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero-media{position:relative;overflow:hidden;min-height:760px}
.hero-media img{transform:scale(1.035);animation:herozoom 16s ease-out both}
@keyframes herozoom{to{transform:scale(1.09)}}
.hero-badge{position:absolute;left:38px;bottom:38px;background:rgba(246,241,232,.88);backdrop-filter:blur(14px);padding:18px 20px;max-width:360px;border:1px solid var(--softline)}
.hero-badge strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:10px}
.hero-badge p{margin:0;font-size:14px;line-height:1.55;color:var(--ink)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:1px solid var(--ink);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transition:.35s ease;background:transparent}
.btn.primary{background:var(--ink);color:var(--ivory)}
.btn:hover{transform:translateY(-2px);opacity:.86}
.mini-link{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:24px}
.display-section{padding:110px 0}
.display-grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:9vw;align-items:start}
.display{font-size:clamp(42px,5vw,92px);line-height:1.02;letter-spacing:-.035em;max-width:10.5ch}
.text{font-size:15px;line-height:1.78;color:var(--muted);max-width:540px}
.glance{padding:0 0 110px}
.glance-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.glance-card{padding:30px 34px 26px 0;min-height:250px}
.glance-card:nth-child(3n+2), .glance-card:nth-child(3n+3){border-left:1px solid var(--line);padding-left:34px}
.glance-card:nth-child(n+4){border-top:1px solid var(--line)}
.icon{width:34px;height:34px;margin-bottom:18px;color:var(--ink)}
.glance-card h3{font-size:14px;letter-spacing:.18em;text-transform:uppercase;font-family:Inter,Arial,sans-serif;font-weight:500;margin:0 0 18px}
.glance-card p,.glance-card ul{margin:0;font-size:15px;line-height:1.72;color:var(--muted);padding-left:0;list-style:none}
.glance-card li{margin:0 0 6px}
.cinema{height:84vh;min-height:720px;padding:0;position:relative;overflow:hidden}
.cinema img{height:115%;transform:translateY(-7%) scale(1.02);will-change:transform}
.cinema-note{position:absolute;right:38px;bottom:38px;background:rgba(246,241,232,.86);backdrop-filter:blur(14px);padding:18px 22px;border:1px solid var(--softline);max-width:400px}
.cinema-note p{margin:0;font-size:14px;line-height:1.62}
.offer-section{padding:110px 0}
.offer-header{display:grid;grid-template-columns:.78fr 1.22fr;gap:8vw;align-items:end;margin-bottom:40px}
.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.offer{background:var(--ivory);padding:58px 56px 54px;min-height:370px;display:flex;flex-direction:column}
.offer-kicker{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.offer-name{font-size:clamp(46px,5vw,78px);line-height:.95;letter-spacing:-.04em;margin:20px 0 10px}
.offer-price{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:24px}
.offer p{max-width:440px;color:var(--muted);line-height:1.75;margin:0 0 26px}
.themes{padding:110px 0}
.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:42px}
.theme{background:var(--ivory);padding:36px 22px 28px;min-height:154px;display:flex;flex-direction:column;justify-content:space-between}
.theme .theme-num{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze)}
.theme h3{font-size:25px;line-height:1.05;margin:18px 0 0}
.process{padding:120px 0}
.process-intro{text-align:center;margin-bottom:58px}
.process-intro .display{max-width:none;margin:0 auto;font-size:clamp(54px,7vw,112px);line-height:.95}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.step{padding:28px 28px 10px 0;min-height:150px}
.step+.step{border-left:1px solid var(--line);padding-left:28px}
.step .num{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.step h3{font-size:26px;line-height:1.12;margin:26px 0 0}
.system{padding:110px 0;background:rgba(255,255,255,.28)}
.system-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}
.system-card{background:var(--ivory);padding:34px 22px;min-height:208px}
.system-card h4{font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-family:Inter,Arial,sans-serif;font-weight:500;margin:14px 0 12px}
.system-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.quote-strip{padding:90px 0}
.quote-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.quote{padding-top:16px;border-top:1px solid var(--line);font-family:Georgia,serif;font-size:33px;line-height:1.1;letter-spacing:-.02em}
.explore{padding:110px 0}
.explore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}
.explore-card{background:var(--ivory);padding:42px 28px 34px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}
.explore-card h3{font-size:34px;margin:0 0 16px}
.explore-card p{color:var(--muted);line-height:1.74;max-width:360px}
.partner{padding:110px 0}
.partner-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:start}
.partner-links{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:36px}
.partner-box{background:var(--ivory);padding:28px 20px;min-height:162px}
.partner-box h4{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-family:Inter,Arial,sans-serif;font-weight:500;margin:0 0 12px}
.partner-box p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.final{padding:140px 24px;text-align:center;background:#E9E0D3}
.final h2{font-size:clamp(56px,8vw,138px);line-height:.95;letter-spacing:-.05em;margin:20px auto;max-width:9ch}
.final p{color:var(--muted);font-size:16px}
footer{padding:28px 32px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s ease, transform .9s cubic-bezier(.2,.65,.3,1)}
.reveal.visible{opacity:1;transform:none}
.mobile-only{display:none}
@media(max-width:1100px){
  .hero{grid-template-columns:1fr}.hero-copy{padding-top:120px}.hero-media{min-height:56vh}
  .display-grid,.offer-header,.partner-grid{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}
  .glance-grid,.process-grid,.system-grid,.explore-grid,.quote-grid{grid-template-columns:1fr 1fr}.glance-card:nth-child(2n),.glance-card:nth-child(3n+2),.glance-card:nth-child(3n+3){border-left:1px solid var(--line);padding-left:24px}.glance-card:nth-child(2n+1){padding-right:24px}.glance-card:nth-child(n+3){border-top:1px solid var(--line)}
  .partner-links{grid-template-columns:1fr}
}
@media(max-width:820px){
  .top-inner{grid-template-columns:auto 1fr auto}.nav{display:none}.wrap{width:min(1560px,100% - 30px)}
  .hero-copy h1,.final h2{max-width:none}
  .glance-grid,.offer-grid,.theme-grid,.process-grid,.system-grid,.explore-grid,.quote-grid{grid-template-columns:1fr}
  .glance-card,.glance-card:nth-child(2n),.glance-card:nth-child(3n+2),.glance-card:nth-child(3n+3){padding:24px 0;border-left:0}.glance-card+.glance-card{border-top:1px solid var(--line)}
  .step+.step,.offer+.offer{border-left:0;border-top:1px solid var(--line);padding-left:0}
  .offer{padding:34px 24px}.theme{min-height:0}.quote{font-size:28px}.cinema{height:64vh;min-height:420px}
  footer{flex-direction:column}
}
