@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{
  --ink:#f4f0e8;
  --paper:#11110f;
  --soft:#1a1916;
  --muted:#9b948a;
  --line:rgba(244,240,232,.16);
  --white:#fffdf8;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
.site-header{position:fixed;z-index:20;top:0;left:0;right:0;height:78px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:rgba(17,17,15,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.18em}
.brand em{font-style:normal;font-weight:400;opacity:.55}
.logo-slot{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--ink);font-family:Georgia,serif;font-size:20px}
.nav{display:flex;gap:28px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink)}
.nav a{opacity:.7}.nav a:hover{opacity:1}
.menu-toggle{display:none;border:0;background:none;font-size:22px;color:var(--ink)}
.hero{min-height:100vh;background-image:linear-gradient(90deg,rgba(15,15,13,.95),rgba(15,15,13,.70),rgba(15,15,13,.32)),url("studio-concept.jpg");background-size:cover;background-position:center;color:var(--white);position:relative;display:flex;align-items:center;padding:140px 7vw 90px}
.hero:after{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(115deg,transparent 0 48%,#fff 48.2% 48.5%,transparent 48.7%),linear-gradient(25deg,transparent 0 62%,#fff 62.2% 62.5%,transparent 62.7%)}
.hero-content{position:relative;z-index:2;max-width:900px}
.eyebrow,.kicker,.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:700}
.eyebrow{opacity:.7}
.hero h1{font-size:clamp(48px,8vw,110px);line-height:.98;letter-spacing:-.05em;margin:22px 0 28px;max-width:1050px}
.hero h1 span{font-family:"Playfair Display",Georgia,serif;font-style:italic;font-weight:500}
.hero-copy{max-width:620px;font-size:clamp(18px,2vw,25px);color:rgba(255,253,248,.76)}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}
.button{display:inline-block;padding:15px 22px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}
.button-light{background:var(--white);color:var(--ink)}
.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.13em}
.hero-note{position:absolute;z-index:3;bottom:34px;right:5vw;font-size:10px;letter-spacing:.18em;opacity:.55}
.section{padding:120px max(6vw,24px);max-width:1440px;margin:auto}
.section-label{color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-bottom:70px}
.about-grid,.vision-head,.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
h2{font-size:clamp(42px,6vw,76px);line-height:1.03;letter-spacing:-.045em;margin:0}
h2 i{font-family:"Playfair Display",Georgia,serif;font-weight:500}
.body-copy{max-width:590px;font-size:18px;color:#bdb5aa}
.body-copy p{margin-top:0;margin-bottom:24px}
.body-copy strong{color:#fffdf8}
.pillars{background:var(--ink);color:var(--white);max-width:none}
.pillars>.section-label{max-width:1320px;margin-left:auto;margin-right:auto;color:rgba(255,253,248,.5);border-color:rgba(255,253,248,.2)}
.pillar-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1fr}
.pillar{padding:65px 6vw 75px;min-height:590px;position:relative}
.pillar.creative{background:#25241f}
.pillar.hospitality{background:#38342d}
.pillar-number{font-size:11px;letter-spacing:.2em;opacity:.45}
.pillar-icon{font-size:70px;line-height:1;margin:35px 0}
.pillar h3{font-family:"Playfair Display",Georgia,serif;font-size:60px;font-weight:500;margin:0 0 18px}
.pillar p{font-size:18px;max-width:520px;color:rgba(255,253,248,.72)}
.pillar ul{padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.17);margin-top:40px}
.pillar li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.17);font-size:13px;letter-spacing:.05em}
.space-section{background:#11110f;max-width:none;padding-left:6vw;padding-right:6vw}
.space-head{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}
.space-grid{max-width:1320px;margin:75px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.space-card{margin:0;background:#1a1916;color:var(--white);overflow:hidden}
.space-card img{display:block;width:100%;height:clamp(260px,32vw,520px);object-fit:cover;transition:transform .6s ease}
.space-card:hover img{transform:scale(1.025)}
.space-card figcaption{display:grid;grid-template-columns:45px 1fr;column-gap:16px;padding:22px 25px 25px;align-items:start}
.space-card figcaption span{font-size:10px;letter-spacing:.15em;opacity:.45}
.space-card figcaption strong{font-family:"Playfair Display",Georgia,serif;font-size:28px;font-weight:500}
.space-card figcaption small{grid-column:2;color:rgba(255,255,255,.55);font-size:11px;letter-spacing:.06em;margin-top:3px}
.space-note{max-width:1320px;margin:20px auto 0;color:var(--muted);font-size:11px;letter-spacing:.03em}

.experience{padding:140px 6vw;background:#1a1916}
.experience-inner{max-width:1000px;margin:auto;text-align:center}
.experience h2{font-size:clamp(42px,6vw,78px);margin:18px 0 25px}
.experience p:last-child{font-size:19px;color:#bdb5aa;max-width:760px;margin:auto}
.future-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:75px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.future-grid div{padding:30px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:7px}
.future-grid div:last-child{border:0}
.future-grid span{font-size:10px;color:var(--muted)}
.future-grid strong{font-family:"Playfair Display",Georgia,serif;font-size:25px;font-weight:500}
.future-grid small{color:var(--muted);font-size:11px}
.approach{background:#1a1916;max-width:none}
.approach-grid{max-width:1320px;margin:auto}
.steps{border-top:1px solid var(--line)}
.steps>div{display:grid;grid-template-columns:50px 1fr 1.4fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}
.steps span{font-size:10px;color:var(--muted)}
.steps strong{font-size:15px}
.steps p{margin:0;color:var(--muted);font-size:13px}
.future-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}
.future-intro p{color:#bdb5aa;font-size:17px;max-width:500px}
.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:65px}
.tag-cloud span{border:1px solid var(--line);padding:12px 17px;font-size:12px;letter-spacing:.04em}
.founder{background:#1a1916;color:var(--white);padding:110px 10vw;display:flex;align-items:center;gap:70px}
.founder-mark{width:130px;height:130px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-family:Georgia,serif;font-size:72px;flex:none}
.founder h2{font-size:60px}
.founder p{color:rgba(255,255,255,.62)}
.founder-quote{font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:22px!important;color:var(--white)!important;margin-top:30px}
.contact{background:#8f806b;color:#11110f;padding:120px 7vw}
.contact-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.contact h2{font-size:clamp(48px,7vw,88px)}
.contact-copy{padding-top:10px;max-width:520px}
.contact-copy>p:first-child{font-size:18px}
.contact-link{display:inline-block;font-family:"Playfair Display",Georgia,serif;font-size:28px;margin:20px 0}
.placeholder{font-size:11px!important;color:rgba(17,17,15,.65)}
.socials{display:flex;gap:20px;border-top:1px solid rgba(17,17,15,.28);padding-top:20px;margin-top:40px;font-size:11px;text-transform:uppercase;letter-spacing:.13em}
footer{background:#11110f;color:rgba(255,255,255,.6);padding:35px 5vw;display:flex;justify-content:space-between;gap:30px;font-size:10px;letter-spacing:.08em}
footer strong{color:white;margin-right:25px} footer span{opacity:.55}
@media(max-width:800px){
  .site-header{height:68px}
  .menu-toggle{display:block}
  .nav{display:none;position:absolute;top:68px;left:0;right:0;background:#11110f;padding:20px 6vw;flex-direction:column;gap:18px;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  .brand{font-size:10px}
  .hero{padding:120px 7vw 80px}
  .hero h1{font-size:clamp(46px,14vw,75px)}
  .hero-note{left:7vw;right:auto}
  .section{padding:85px 7vw}
  .section-label{margin-bottom:45px}
  .about-grid,.vision-head,.approach-grid,.future-intro,.contact-inner,.space-head{grid-template-columns:1fr;gap:45px}
  .pillar-grid{grid-template-columns:1fr}
  .space-grid{grid-template-columns:1fr;gap:18px}
  .pillar{min-height:auto;padding:55px 8vw}
  .pillar h3{font-size:52px}
  .future-grid{grid-template-columns:1fr 1fr}
  .future-grid div:nth-child(2n){border-right:0}
  .future-grid div{border-bottom:1px solid var(--line)}
  .steps>div{grid-template-columns:35px 1fr}
  .steps p{grid-column:2}
  .founder{padding:85px 8vw;display:block}
  .founder-mark{margin-bottom:40px}
  .founder h2{font-size:50px}
  footer{display:block}
  footer small{display:block;margin-top:18px}
}

/* Official POLYPTYCH identity assets */
.logo-mark{width:34px;height:34px;object-fit:cover;display:block}


/* Dark theme refinements */
.about{background:#11110f;color:var(--white)}
.about .body-copy{color:#bdb5aa}
.about .section-label,.space-section .section-label{color:#9b948a}
.space-section h2,.experience h2,.future-intro h2,.approach h2{color:var(--white)}
.space-note{color:#9b948a}
.founder-mark{border-color:rgba(255,255,255,.25);color:var(--white)}
.logo-mark{width:38px;height:38px;object-fit:contain;display:block;background:transparent}
.brand{color:var(--white)}
.nav a{color:var(--white)}
.menu-toggle{color:var(--white)}
