
:root{
  --bg:#090a0a;
  --bg-soft:#101110;
  --text:#e7e0d4;
  --muted:#aaa294;
  --line:rgba(199,178,145,.22);
  --bronze:#c5ad86;
  --bronze-2:#8d7658;
  --max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 18% 8%, rgba(122,105,78,.13), transparent 26%),
    radial-gradient(circle at 82% 36%, rgba(75,71,62,.11), transparent 32%),
    var(--bg);
  color:var(--text);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed; inset:0; pointer-events:none; opacity:.22;
  background-image:
    radial-gradient(circle at 15% 25%, #fff 0 1px, transparent 1.2px),
    radial-gradient(circle at 72% 14%, #fff 0 1px, transparent 1.2px),
    radial-gradient(circle at 45% 62%, #fff 0 1px, transparent 1.2px),
    radial-gradient(circle at 88% 76%, #fff 0 1px, transparent 1.2px);
  background-size:160px 160px,220px 220px,280px 280px,340px 340px;
}
a{color:inherit}
.shell{width:min(var(--max), calc(100% - 40px)); margin:0 auto}
.skip-link{position:absolute; left:-9999px; top:0}
.skip-link:focus{left:16px; top:16px; z-index:999; background:#fff; color:#000; padding:10px 14px; border-radius:4px}
.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:blur(16px);
  background:rgba(9,10,10,.78);
  border-bottom:1px solid var(--line);
}
.nav{min-height:74px; display:flex; align-items:center; justify-content:space-between; gap:24px}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; font-size:.86rem; letter-spacing:.2em; font-weight:700}
.brand-mark{color:var(--bronze)}
nav{display:flex; align-items:center; gap:28px}
nav a{text-decoration:none; color:var(--muted); font-size:.9rem; transition:color .2s ease}
nav a:hover{color:var(--text)}
.nav-cta{border:1px solid var(--line); padding:10px 16px; border-radius:999px}
.hero{
  position:relative; min-height:780px; display:flex; align-items:center;
  border-bottom:1px solid var(--line); overflow:hidden;
}
.hero::after{
  content:""; position:absolute; inset:auto 0 0; height:30%;
  background:linear-gradient(to top, var(--bg), transparent); pointer-events:none;
}
.hero-grid{
  position:relative; z-index:2; display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
  gap:54px; align-items:center; padding:100px 0 82px;
}
.eyebrow{
  margin:0 0 18px; color:var(--bronze); font-size:.72rem; font-weight:700;
  letter-spacing:.2em; text-transform:uppercase;
}
h1,h2,h3{margin-top:0; line-height:1.05; letter-spacing:-.03em}
h1{
  max-width:850px; margin-bottom:26px;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(3rem, 6vw, 6.6rem); font-weight:400;
}
h1 span{color:var(--bronze)}
.hero-lead{max-width:680px; font-size:clamp(1.06rem, 1.5vw, 1.3rem); color:#c7c0b5}
.hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin:34px 0 30px}
.button{
  display:inline-flex; align-items:center; justify-content:center; min-height:48px;
  padding:0 20px; border-radius:999px; text-decoration:none; font-size:.9rem;
  font-weight:700; letter-spacing:.02em; transition:transform .18s ease;
}
.button:hover{transform:translateY(-2px)}
.primary{background:var(--bronze); color:#111}
.ghost{border:1px solid var(--line); color:var(--text)}
.keywords{display:flex; flex-wrap:wrap; gap:9px}
.keywords span{border:1px solid var(--line); color:var(--muted); border-radius:999px; padding:7px 11px; font-size:.76rem}
.hero-art{margin:0; position:relative; display:flex; justify-content:center}
.hero-art::before{
  content:""; position:absolute; inset:12% 10%; border-radius:50%;
  background:radial-gradient(circle, rgba(197,173,134,.16), transparent 65%); filter:blur(16px);
}
.hero-art img{
  width:100%; max-width:690px; position:relative;
  filter:saturate(.84) contrast(1.04); mix-blend-mode:screen; opacity:.95;
}
.section{padding:120px 0}
.section-intro{max-width:760px; margin-bottom:52px}
.section-intro h2,.split h2,.studio-panel h2{
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.3rem, 4.6vw, 4.7rem); font-weight:400; margin-bottom:20px;
}
.section-intro p{color:var(--muted); font-size:1.1rem}
.cards{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.card{
  padding:34px 30px 38px; border-right:1px solid var(--line); min-height:390px;
  background:linear-gradient(180deg, rgba(255,255,255,.018), transparent);
}
.card:last-child{border-right:0}
.card-number{color:var(--bronze-2); font-family:Georgia, serif; font-size:.92rem}
.card h3{margin:56px 0 18px; font-size:1.5rem; font-weight:600}
.card p{color:#beb6aa}
.card ul{list-style:none; padding:0; margin:30px 0 0; display:grid; gap:9px}
.card li{color:var(--muted); font-size:.9rem; padding-top:9px; border-top:1px solid rgba(199,178,145,.12)}
.split-section{
  background:linear-gradient(135deg, rgba(197,173,134,.055), transparent 45%), var(--bg-soft);
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.split{display:grid; grid-template-columns:.9fr 1.1fr; gap:80px}
.approach-copy{max-width:620px}
.big-quote{color:var(--text)!important; font-family:Georgia, serif; font-size:clamp(1.8rem, 3vw, 3rem); line-height:1.2; margin-top:0}
.approach-copy p{color:var(--muted); font-size:1.08rem}
.studio-grid{display:grid; grid-template-columns:1.35fr .65fr; gap:24px}
.studio-panel,.contact-panel{border:1px solid var(--line); background:rgba(255,255,255,.018)}
.studio-panel{padding:54px}
.studio-panel p{max-width:760px; color:#beb6aa; font-size:1.05rem}
.muted{color:var(--muted)!important; font-size:.92rem!important}
.contact-panel{padding:36px; display:flex; flex-direction:column; justify-content:flex-end}
.contact-panel h3{font-family:Georgia, serif; font-size:1.75rem; font-weight:400; line-height:1.22}
.contact-mail{display:inline-block; margin:24px 0 8px; color:var(--bronze); text-underline-offset:5px; overflow-wrap:anywhere}
.contact-panel p:last-child{color:var(--muted); font-size:.9rem}
footer{border-top:1px solid var(--line)}
.footer-inner{min-height:100px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:var(--muted); font-size:.82rem}
.footer-note{letter-spacing:.08em}
@media (max-width:950px){
  nav a:not(.nav-cta){display:none}
  .hero{min-height:auto}
  .hero-grid{grid-template-columns:1fr; padding:86px 0 64px}
  .hero-art{order:-1}
  .hero-art img{max-width:650px}
  .cards{grid-template-columns:1fr}
  .card{border-right:0; border-bottom:1px solid var(--line)}
  .card:last-child{border-bottom:0}
  .split,.studio-grid{grid-template-columns:1fr}
  .split{gap:34px}
}
@media (max-width:620px){
  .shell{width:min(var(--max), calc(100% - 26px))}
  .nav{min-height:64px}
  .brand{font-size:.76rem}
  .nav-cta{padding:8px 12px}
  .hero-grid{padding-top:58px}
  h1{font-size:clamp(2.7rem, 15vw, 4.4rem)}
  .section{padding:82px 0}
  .studio-panel{padding:32px 24px}
  .contact-panel{padding:28px 24px}
  .footer-inner{padding:24px 0; min-height:0; align-items:flex-start; flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}


.contact-form{
  display:grid;
  gap:14px;
  margin:22px 0 8px;
}
.contact-form label:not(.privacy-check){
  display:grid;
  gap:7px;
}
.contact-form label > span{
  color:var(--muted);
  font-size:.8rem;
}
.contact-form input,
.contact-form textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,255,255,.025);
  color:var(--text);
  padding:12px 13px;
  font:inherit;
  outline:none;
}
.contact-form textarea{resize:vertical; min-height:110px}
.contact-form input:focus,
.contact-form textarea:focus{border-color:var(--bronze)}
.contact-form .button{border:0; cursor:pointer}
.privacy-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:.8rem;
  color:var(--muted);
}
.privacy-check input{
  width:18px;
  height:18px;
  margin-top:3px;
  flex:0 0 auto;
}
.privacy-check a{color:var(--bronze)}
.footer-links{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}
.footer-links a{
  color:var(--muted);
  text-underline-offset:4px;
}
.legal-main{padding:92px 0 120px}
.legal-wrap{max-width:820px}
.legal-wrap h1{
  font-size:clamp(2.8rem, 6vw, 5.4rem);
  margin-bottom:34px;
}
.legal-wrap h2{
  margin-top:44px;
  margin-bottom:14px;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.8rem;
  font-weight:400;
}
.legal-wrap h3{
  margin-top:28px;
  margin-bottom:10px;
  font-size:1.15rem;
}
.legal-wrap p,
.legal-wrap li{
  color:#c7c0b5;
}
.legal-wrap a{color:var(--bronze)}
.legal-card{
  border:1px solid var(--line);
  background:rgba(255,255,255,.018);
  padding:28px;
  margin:26px 0;
}
.legal-note{
  color:var(--muted)!important;
  font-size:.92rem;
}
.simple-back{
  display:inline-flex;
  margin-bottom:30px;
  color:var(--bronze);
  text-decoration:none;
}
@media (max-width:620px){
  .legal-main{padding:58px 0 82px}
  .legal-card{padding:22px}
}


.form-success{
  display:grid;
  gap:4px;
  margin:20px 0 6px;
  padding:14px 16px;
  border:1px solid rgba(197,173,134,.38);
  border-radius:10px;
  background:rgba(197,173,134,.08);
}
.form-success[hidden]{display:none}
.form-success strong{color:var(--text)}
.form-success span{color:var(--muted); font-size:.88rem}
