

:root{
  --color-bg-primary:#090b10;
  --color-bg-secondary:#111722;
  --color-surface-elevated:#1a202b;
  --color-surface-accent:#3b2430;
  --color-accent-gold:#d6b477;
  --color-accent-bronze:#8f6f45;
  --color-text-primary:#f2eee6;
  --color-text-secondary:#a7a9b0;
  --color-border-gold-translucent:rgba(214,180,119,0.24);

  --font-heading:Playfair Display, Georgia, "Times New Roman", serif;
  --font-body:Inter, "Helvetica Neue", Arial, sans-serif;

  --text-display:clamp(2.4rem,4vw,3.4rem);
  --text-h1:clamp(2rem,3vw,2.2rem);
  --text-h2:1.4rem;
  --text-h3:1.125rem;
  --text-body:1rem;
  --text-small:0.95rem;

  --space-0:0px;
  --space-1:8px;
  --space-2:16px;
  --space-3:32px;
  --space-4:48px;
  --space-5:72px;
  --space-6:112px;

  --container-max:1240px;
  --container-pad:32px;
  --container-pad-mobile:16px;

  --radius-sm:4px;

  --border-thin:1px solid var(--color-border-gold-translucent);
  --border-strong:1px solid var(--color-accent-gold);

  --transition-fast:120ms ease;
}

*,
*::before,
*::after{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

html{
  font-size:16px;
  -webkit-text-size-adjust:100%;
}

body{
  min-height:100vh;
  background:var(--color-bg-primary);
  color:var(--color-text-primary);
  font-family:var(--font-body);
  font-size:var(--text-body);
  line-height:1.6;
  text-rendering:optimizeLegibility;
}

img,
picture,
video,
canvas,
svg{
  display:block;
  max-width:100%;
  height:auto;
}

input,
button,
textarea,
select{
  font:inherit;
  color:inherit;
  background:none;
  border:none;
}

button{
  cursor:pointer;
}

a{
  color:inherit;
  text-decoration:none;
  transition:color var(--transition-fast), border-color var(--transition-fast);
}

a:hover,
a:focus-visible{
  color:var(--color-accent-gold);
}

:focus-visible{
  outline:1px solid var(--color-border-gold-translucent);
  outline-offset:2px;
}

h1,
h2,
h3,
h4{
  font-family:var(--font-heading);
  font-weight:500;
  line-height:1.15;
  letter-spacing:0.01em;
  margin-block-end:var(--space-2);
}

h1{font-size:var(--text-display);}
h2{font-size:var(--text-h1);}
h3{font-size:var(--text-h2);}
h4{font-size:var(--text-h3);}

p{
  margin-block-end:var(--space-2);
  color:var(--color-text-primary);
}

small{
  font-size:var(--text-small);
  color:var(--color-text-secondary);
}

ul,
ol{
  margin-block-end:var(--space-2);
  padding-inline-start:1.2em;
}

li{
  margin-block-end:0.4em;
}

blockquote{
  margin-block-end:var(--space-3);
  padding-left:var(--space-2);
  border-left:2px solid var(--color-accent-gold);
  color:var(--color-text-secondary);
}

hr{
  border:none;
  border-top:var(--border-thin);
  margin-block:var(--space-3);
}

.container{
  width:100%;
  max-width:var(--container-max);
  margin-inline:auto;
  padding-inline:var(--container-pad);
}

@media (max-width:900px){
  .container{
    padding-inline:var(--container-pad-mobile);
  }
}

.section{
  padding-block:var(--space-5);
}

@media (max-width:900px){
  .section{
    padding-block:var(--space-4);
  }
}

.surface{
  background:var(--color-surface-elevated);
  border:var(--border-thin);
}

.surface-accent{
  background:var(--color-surface-accent);
}

.panel{
  background:var(--color-surface-elevated);
  border:var(--border-thin);
  padding:var(--space-3);
}

@media (max-width:900px){
  .panel{
    padding:var(--space-2);
  }
}

.stack > * + *{
  margin-top:var(--space-2);
}

.stack-lg > * + *{
  margin-top:var(--space-3);
}

.cluster{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2);
  align-items:center;
}

.cluster > *{
  min-width:0;
}

.flex{
  display:flex;
  gap:var(--space-2);
}

.flex-col{
  flex-direction:column;
}

.flex-wrap{
  flex-wrap:wrap;
}

.flex-between{
  justify-content:space-between;
  align-items:center;
}

.flex > *{
  min-width:0;
}

.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  font-size:var(--text-body);
  font-weight:500;
  border-radius:var(--radius-sm);
  background:var(--color-accent-gold);
  color:#090b10;
  border:1px solid var(--color-accent-gold);
  transition:background var(--transition-fast), border-color var(--transition-fast);
}

.button:hover,
.button:focus-visible{
  background:#e3c992;
  border-color:#e3c992;
}

.button-outline{
  background:transparent;
  color:var(--color-accent-gold);
  border:1px solid var(--color-accent-gold);
}

.button-outline:hover,
.button-outline:focus-visible{
  background:rgba(214,180,119,0.08);
}

.input,
.textarea,
.select{
  width:100%;
  padding:12px 14px;
  border:1px solid var(--color-accent-bronze);
  background:var(--color-surface-elevated);
  color:var(--color-text-primary);
  border-radius:var(--radius-sm);
}

.input:focus,
.textarea:focus,
.select:focus{
  outline:none;
  border-color:var(--color-accent-gold);
}

.label{
  display:block;
  margin-bottom:6px;
  font-size:var(--text-small);
  color:var(--color-text-secondary);
}

.card{
  background:var(--color-surface-elevated);
  border:var(--border-thin);
  overflow:hidden;
}

.card > :last-child{
  margin-bottom:0;
}

.media{
  position:relative;
  overflow:hidden;
  border:var(--border-thin);
}

.media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.media-overlay::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(9,11,16,0.24);
}

.text-secondary{
  color:var(--color-text-secondary);
}

.text-center{
  text-align:center;
}

.hide{
  display:none !important;
}


.site-header{position:sticky;top:0;z-index:1000;background:var(--color-bg-primary);border-bottom:var(--border-thin);} 
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:var(--space-2);} 
.brand{display:flex;align-items:center;gap:12px;min-width:0;} 
.brand-mark{height:48px;width:auto;display:block;} 
.brand-text{font-family:var(--font-heading);font-size:1.2rem;} 
.nav-toggle{display:none;flex-direction:column;gap:4px;padding:10px;border:var(--border-thin);} 
.nav-toggle-line{width:22px;height:2px;background:var(--color-text-primary);} 
.nav-close{display:none}
.site-nav{} 
.nav-list{list-style:none;display:flex;align-items:center;gap:24px;margin:0;padding:0;} 
.nav-list li{margin:0;padding:0;} 
.nav-list a{font-size:0.95rem;white-space:nowrap;} 
.nav-list a[aria-current="page"]{color:var(--color-accent-gold);} 

@media (max-width:900px){
  .nav-toggle{display:flex;}
  .site-nav{position:fixed;inset:0;background:var(--color-bg-primary);padding:80px 24px;transform:translateX(100%);transition:transform var(--transition-fast);} 
  .site-nav.open{transform:translateX(0);} 
  .nav-list{flex-direction:column;align-items:flex-start;gap:32px;} 
  .brand-mark{height:36px;} 
  .brand-text{display:none;} 
}


.site-footer{background:var(--color-bg-secondary);padding-top:var(--space-5);} 
.footer-inner{display:flex;flex-direction:column;gap:var(--space-4);} 
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;} 
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--space-3);} 
.footer-grid ul{list-style:none;margin:0;padding:0;} 
.footer-grid li{margin-bottom:8px;} 
.footer-disclaimer{color:var(--color-text-secondary);} 

.consent{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface-elevated);border-top:var(--border-strong);padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;z-index:1000;} 
.consent.hide{display:none !important;} 
.consent-actions{display:flex;gap:8px;} 

.age-modal{position:fixed;inset:0;background:rgba(0,0,0,0.7);display:flex;align-items:center;justify-content:center;z-index:2000;} 
.age-modal[hidden]{display:none !important;} 
.age-modal-inner{background:var(--color-surface-elevated);border:var(--border-strong);padding:32px;max-width:420px;width:90%;text-align:center;} 
.age-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px;} 

@media(max-width:900px){
.footer-grid{grid-template-columns:1fr;}
}


.tc-main{}

.tc-container{
  display:flex;
  justify-content:center;
}

.tc-block{
  max-width:720px;
  width:100%;
}

.tc-hero .tc-block{
  text-align:left;
}

.tc-section h2{
  padding-bottom:8px;
  border-bottom:1px solid var(--color-accent-gold);
  margin-bottom:var(--space-3);
}

.tc-section{
  border-top:1px solid var(--color-border-gold-translucent);
}

@media (max-width:900px){
  .tc-block{
    max-width:100%;
  }
}


.cookie-policy{}

.cookie-hero__inner{
  max-width:720px;
  margin-inline:auto;
  text-align:center;
}

.cookie-hero__lead{
  font-size:var(--text-body);
  color:var(--color-text-primary);
}

.cookie-hero__meta{
  font-size:var(--text-small);
  color:var(--color-text-secondary);
}

.cookie-section__inner{
  max-width:720px;
  margin-inline:auto;
}

.cookie-section--divided .cookie-type{
  padding-top:var(--space-3);
  border-top:var(--border-thin);
}

.cookie-section--divided .cookie-type:first-of-type{
  border-top:none;
  padding-top:0;
}

.cookie-type h3{
  margin-bottom:var(--space-1);
}

@media (max-width:900px){
  .cookie-hero__inner,
  .cookie-section__inner{
    max-width:100%;
  }
}


/* Page root */
.privacy-policy{
}

/* Hero */
.pp-hero__inner{
  max-width:760px;
  margin-inline:auto;
  text-align:center;
}

/* Sections */
.pp-section{
}

.pp-block{
  max-width:760px;
}

/* Headings separation */
.pp-block h2{
  padding-top:var(--space-3);
  border-top:var(--border-thin);
  margin-top:var(--space-3);
}

/* Lists */
.pp-block ul{
  padding-inline-start:1.2em;
}

.pp-block li{
  margin-bottom:8px;
}

.pp-block li::marker{
  color:var(--color-accent-gold);
}

/* Typography width behavior */
.pp-block{
  line-height:1.7;
}

/* Responsive */
@media (max-width:900px){
  .pp-hero__inner{
    padding-inline:0;
  }

  .pp-block{
    max-width:100%;
  }
}


.portfolio-page{display:block}

.portfolio-hero-grid{display:grid;grid-template-columns:2fr 3fr;gap:var(--space-4);align-items:center}
.portfolio-hero-text{max-width:640px}
.portfolio-hero-image{min-width:0}

@media(max-width:1000px){
.portfolio-hero-grid{grid-template-columns:1fr}
}

.portfolio-intro-inner{max-width:600px;margin-inline:auto;text-align:center}

.portfolio-grid{column-count:3;column-gap:var(--space-3)}
.portfolio-card{break-inside:avoid;margin-bottom:var(--space-3);border:var(--border-thin);background:var(--color-surface-elevated)}
.portfolio-card-body{padding:var(--space-2)}

@media(max-width:1000px){.portfolio-grid{column-count:2}}
@media(max-width:600px){.portfolio-grid{column-count:1}}

.portfolio-projects-grid{display:grid;grid-template-columns:3fr 2fr;gap:var(--space-4)}
.portfolio-projects-text{max-width:700px}
.portfolio-projects-image{min-height:300px}

@media(max-width:900px){.portfolio-projects-grid{grid-template-columns:1fr}}

.portfolio-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}
.portfolio-step{border:var(--border-thin);padding:var(--space-3)}

@media(max-width:900px){.portfolio-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.portfolio-process-grid{grid-template-columns:1fr}}

.portfolio-types-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}
@media(max-width:900px){.portfolio-types-grid{grid-template-columns:1fr}}

.portfolio-quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);max-width:700px;margin-inline:auto;text-align:center}
@media(max-width:900px){.portfolio-quality-grid{grid-template-columns:1fr}}

.portfolio-cta-panel{border:var(--border-strong);padding:var(--space-4);text-align:center;max-width:600px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-2)}


.about-page{}

.about-hero-grid{display:grid;grid-template-columns:45% 55%;gap:var(--space-5);align-items:center}
.about-hero-text{max-width:650px}
.about-hero-media{height:420px}

.about-narrow{max-width:720px;margin-inline:auto}

.about-card-grid{display:flex;flex-direction:column;gap:var(--space-4)}
.about-card-grid-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.about-card{padding:var(--space-3)}

.about-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}

.about-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}
.about-step{padding:var(--space-2);border-top:var(--border-thin)}

.about-style{position:relative}
.about-style-media{height:420px}
.about-style-text{position:relative;margin-top:-200px;max-width:600px}

.about-cta{background:var(--color-bg-secondary);border-top:var(--border-thin)}
.about-cta-inner{max-width:520px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-3)}

@media (max-width:1100px){
.about-hero-grid{grid-template-columns:1fr}
.about-hero-media{height:300px}
}

@media (max-width:900px){
.about-two-col{grid-template-columns:1fr}
.about-card-grid-inner{grid-template-columns:1fr}
.about-process-grid{grid-template-columns:1fr}
.about-style-text{margin-top:var(--space-3)}
}


.contact-page .hero-grid{display:grid;grid-template-columns:4fr 6fr;gap:var(--space-4);align-items:center}
.hero-text{max-width:55ch;display:flex;flex-direction:column;gap:var(--space-2)}
.hero-media{height:420px}

.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}
.why-card{padding:var(--space-3)}

.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}
.process-step{max-width:45ch}

.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);align-items:center}
.scope-text{max-width:60ch}
.scope-media{height:360px}

.prep-box{max-width:600px;margin-inline:auto;text-align:center}

.form-wrap{max-width:800px;margin-inline:auto}
.form{margin-top:var(--space-3)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
.form-grid .full{grid-column:1/-1}
.checkbox{display:flex;gap:var(--space-2);align-items:center}

.individual-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);align-items:center}
.individual-grid p{max-width:55ch}

.faq-wrap{max-width:700px;margin-inline:auto}
.faq-list{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}
.faq-question{width:100%;text-align:left;padding:var(--space-2);border:var(--border-thin)}
.faq-answer{display:none;padding:var(--space-2);border:var(--border-thin);border-top:none}
.faq-item.active .faq-answer{display:block}

.cta-box{max-width:600px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-2)}

@media (max-width:1000px){
.hero-grid{grid-template-columns:1fr}
.scope-grid,.individual-grid{grid-template-columns:1fr}
.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:600px){
.why-grid,.process-grid,.form-grid{grid-template-columns:1fr}
.hero-media{height:260px}
}


.services-page .services-hero{position:relative;padding:0;min-height:70vh;display:flex;align-items:center}
.services-hero-bg{position:absolute;inset:0;z-index:0}
.services-hero-inner{position:relative;z-index:1;display:flex;align-items:center}
.services-hero-text{max-width:520px;display:flex;flex-direction:column;gap:var(--space-3)}

.services-3col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.services-col{min-width:0}

.services-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);align-items:center}
.services-split-text{max-width:600px}
.services-split-media{width:100%;min-width:0}

.services-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.services-2col > *{min-width:0}

.services-cta{display:flex;justify-content:center}
.services-cta-box{max-width:480px;text-align:center;display:flex;flex-direction:column;gap:var(--space-2)}

@media (max-width:1000px){
.services-3col{grid-template-columns:1fr 1fr}
}

@media (max-width:900px){
.services-hero{min-height:auto;padding:var(--space-5) 0}
.services-hero-inner{justify-content:center;text-align:center}
.services-hero-text{margin-inline:auto}
.services-3col,.services-split,.services-2col{grid-template-columns:1fr}
.services-split-text{max-width:100%}
}


.home .hero{padding:0}
.hero-grid{display:grid;grid-template-columns:55% 45%;align-items:stretch}
.hero-image{min-width:0}
.hero-panel{display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);padding:var(--space-5);max-width:50ch}

.trust-bar{border-top:var(--border-thin);border-bottom:var(--border-thin)}
.trust-inner{display:flex;justify-content:space-between;gap:var(--space-3);text-align:center}

.intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}
.intro-card{padding:var(--space-3)}

.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}

.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}
.process-step{max-width:45ch}

.showcase-grid{display:grid;grid-template-columns:60% 40%;gap:var(--space-4);align-items:center}
.showcase-text{max-width:45ch}

.casino-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}

.usecases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}

.packages-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}

.principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);max-width:60ch}

.consult-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}

.cta-panel{display:flex;flex-direction:column;gap:var(--space-3);max-width:50ch;margin-inline:auto}

@media(max-width:900px){
.hero-grid{grid-template-columns:1fr}
.hero-panel{padding:var(--space-3);max-width:none}
.trust-inner{flex-direction:column}
.intro-grid,.services-grid,.process-grid,.casino-grid,.usecases-grid,.packages-grid,.principles-grid,.consult-grid{grid-template-columns:1fr}
.showcase-grid{grid-template-columns:1fr}
.principles-grid{max-width:none}
}


.ei-main{}

.ei-hero-grid{
  display:grid;
  grid-template-columns: 40% 60%;
  gap:var(--space-4);
  align-items:center;
}
.ei-hero-text{max-width:520px;}
.ei-hero-media{height:420px;}

.ei-philosophy{max-width:900px;margin-inline:auto;}
.ei-philosophy-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
}

.ei-split{
  display:grid;
  grid-template-columns:60% 40%;
  gap:var(--space-4);
  align-items:center;
}
.ei-split-reverse{
  grid-template-columns:40% 60%;
}
.ei-split-text{max-width:520px;}
.ei-split-media{height:360px;}

.ei-centered-text{
  max-width:720px;
  margin-inline:auto;
  text-align:center;
}

.ei-steps-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
}

.ei-cta{
  max-width:640px;
  margin-inline:auto;
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  border:var(--border-strong);
}

@media (max-width:1000px){
  .ei-hero-grid{grid-template-columns:1fr;}
  .ei-split,
  .ei-split-reverse{grid-template-columns:1fr;}
}

@media (max-width:900px){
  .ei-philosophy-grid,
  .ei-steps-grid{grid-template-columns:1fr;}
  .ei-hero-media{height:260px;}
  .ei-split-media{height:240px;}
}


.packages-page{}

.packages-hero-grid{
  display:grid;
  grid-template-columns:0.4fr 0.6fr;
  gap:var(--space-4);
  align-items:center;
}
.packages-hero-text{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  max-width:520px;
}
.packages-hero-lead{max-width:60ch}
.packages-hero-media{height:420px}

.packages-definition-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
  max-width:900px;
  margin-inline:auto;
}

.packages-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
}
.packages-card{display:flex;flex-direction:column}
.packages-card-body{padding:var(--space-2)}

.packages-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-4);
  align-items:center;
}
.packages-split-text{max-width:650px}
.packages-split-media{height:420px}

.packages-lighting-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  max-width:700px;
}
.packages-lighting-media{margin-top:var(--space-3);height:360px}

.packages-entertainment-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-3);
}
.packages-entertainment-media{margin-top:var(--space-3);height:360px}

.packages-experience-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
  max-width:700px;
}
.packages-experience-media{margin-top:var(--space-3);height:360px}

.packages-production-inner{
  max-width:640px;
  margin-inline:auto;
  text-align:center;
}

.packages-custom-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-3);
}

.packages-cta-panel{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  text-align:center;
  max-width:560px;
  margin-inline:auto;
  border:var(--border-strong);
}

@media (max-width:1100px){
  .packages-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:900px){
  .packages-hero-grid{grid-template-columns:1fr}
  .packages-definition-grid{grid-template-columns:1fr}
  .packages-cards{grid-template-columns:1fr}
  .packages-split{grid-template-columns:1fr}
  .packages-lighting-grid{grid-template-columns:1fr}
  .packages-entertainment-grid{grid-template-columns:1fr}
  .packages-experience-grid{grid-template-columns:1fr}
  .packages-custom-grid{grid-template-columns:1fr}
}


.thank-you{
  display:flex;
  align-items:center;
  min-height:70vh;
}

.thank-you__panel{
  max-width:720px;
  margin-inline:auto;
  text-align:center;
}

.thank-you__content{
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
}

.thank-you__content p{
  max-width:560px;
  margin-inline:auto;
}

.thank-you__actions{
  margin-top:var(--space-2);
  display:flex;
  justify-content:center;
  gap:var(--space-2);
  flex-wrap:wrap;
}

@media (max-width:900px){
  .thank-you{
    min-height:auto;
  }
}

/* 2026 visual refresh: editorial, cinematic and deliberately varied */
:root{
  --color-bg-primary:#0b0a0c;
  --color-bg-secondary:#151115;
  --color-surface-elevated:#1b171b;
  --color-surface-accent:#3a1825;
  --color-accent-gold:#d8b978;
  --color-accent-bronze:#9f7c4e;
  --color-text-primary:#f4efe5;
  --color-text-secondary:#b7adb0;
  --color-border-gold-translucent:rgba(216,185,120,.2);
  --text-display:clamp(3rem,6.8vw,6.75rem);
  --text-h1:clamp(2.35rem,4.6vw,4.8rem);
  --text-h2:clamp(1.75rem,2.8vw,3rem);
  --space-5:clamp(72px,9vw,128px);
  --container-max:1360px;
  --radius-sm:0;
  --transition-fast:240ms cubic-bezier(.2,.75,.25,1);
}

html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 92% 10%,rgba(100,35,55,.14),transparent 28rem),
    var(--color-bg-primary);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9999;
  opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}

h1{font-weight:400;letter-spacing:-.035em;line-height:.98;text-wrap:balance}
h2{font-weight:400;letter-spacing:-.02em;text-wrap:balance}
h3{font-weight:500}
p{color:var(--color-text-secondary)}
.section > .container > h2:first-child{max-width:18ch;margin-bottom:clamp(28px,4vw,56px)}
.text-center{margin-inline:auto}

.site-header{
  background:rgba(11,10,12,.86);
  border-bottom:1px solid rgba(216,185,120,.14);
  backdrop-filter:blur(18px);
}
.header-inner{min-height:86px}
.brand-mark{height:54px}
.brand-text{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem}
.nav-list{gap:clamp(14px,2vw,30px)}
.nav-list a:not(.button){font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#d7cfd0}
.nav-list a:not(.button):hover,.nav-list a[aria-current="page"]{color:var(--color-accent-gold)}

.button{
  min-height:48px;
  padding:13px 24px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  position:relative;
  overflow:hidden;
}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.25)}
.button-outline{border-color:rgba(216,185,120,.55)}

.media{border:0;background:#161216}
.media::before{content:"";position:absolute;inset:12px;border:1px solid rgba(244,239,229,.18);z-index:2;pointer-events:none}
.media img{transition:transform 900ms cubic-bezier(.2,.75,.25,1),filter 500ms ease;filter:saturate(.8) contrast(1.03)}
.media:hover img{transform:scale(1.025);filter:saturate(1)}
.media-overlay::after{background:linear-gradient(115deg,rgba(11,10,12,.5),rgba(11,10,12,.06))}
.card,.panel{border:1px solid rgba(216,185,120,.16);background:rgba(29,23,28,.72)}
.card{transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}
.card:hover{transform:translateY(-6px);border-color:rgba(216,185,120,.48);background:#211a20}

main > .section:nth-of-type(even){background:linear-gradient(120deg,rgba(255,255,255,.018),transparent 55%)}
main > .section:nth-of-type(4n){background:linear-gradient(110deg,rgba(67,25,39,.32),rgba(18,14,18,.4))}

.home .hero{min-height:calc(100vh - 86px);display:grid}
.home .hero-grid{grid-template-columns:minmax(0,58%) minmax(360px,42%)}
.home .hero-image{min-height:720px}
.hero-panel{max-width:none;padding:clamp(44px,6vw,96px);background:linear-gradient(145deg,#24151d 0%,#100e11 72%)}
.hero-panel h1{font-size:clamp(2.7rem,4.7vw,5rem)}
.hero-panel p{max-width:58ch}
.trust-bar{background:var(--color-accent-gold);color:#161116;border:0}
.trust-inner{padding-block:18px;text-transform:uppercase;letter-spacing:.11em;font-size:.7rem;font-weight:600}

.intro-grid{align-items:start;gap:0;border-top:1px solid rgba(216,185,120,.25)}
.intro-card{border:0;border-right:1px solid rgba(216,185,120,.2);background:transparent;padding:38px 32px 20px}
.intro-card:last-child{border-right:0}
.services-grid{grid-template-columns:repeat(12,1fr);gap:18px}
.services-grid .panel{grid-column:span 5;min-height:240px;padding:36px}
.services-grid .panel:nth-child(2),.services-grid .panel:nth-child(3){grid-column:span 7}
.process-grid,.portfolio-process-grid,.about-process-grid{counter-reset:steps;gap:0;border-top:1px solid rgba(216,185,120,.3)}
.process-step,.portfolio-step,.about-step{counter-increment:steps;border:0;border-right:1px solid rgba(216,185,120,.16);padding:76px 28px 24px;position:relative}
.process-step::before,.portfolio-step::before,.about-step::before{content:"0" counter(steps);position:absolute;top:22px;left:28px;color:var(--color-accent-gold);font-size:.72rem;letter-spacing:.16em}
.showcase-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:0}
.showcase-grid .media{height:580px}
.showcase-text{max-width:none;background:#efe7d8;padding:clamp(36px,5vw,76px);align-self:center}
.showcase-text p{color:#30262b;font-family:var(--font-heading);font-size:clamp(1.4rem,2.2vw,2.35rem);line-height:1.35}
.casino-grid,.packages-grid{gap:18px}
.casino-grid .card,.packages-grid .card{padding:36px;min-height:260px}
.usecases-grid>div,.principles-grid>div,.consult-grid>div{padding:28px 0;border-top:1px solid rgba(216,185,120,.3)}

.services-page .services-hero{min-height:calc(100vh - 86px)}
.services-hero-bg::after{background:linear-gradient(90deg,rgba(8,7,9,.92) 0%,rgba(8,7,9,.5) 48%,rgba(8,7,9,.12))}
.services-hero-text{max-width:760px}
.services-hero-text h1{font-size:clamp(3rem,6vw,6.4rem)}
.services-3col{gap:0}
.services-col{padding:38px;border-left:1px solid rgba(216,185,120,.2)}
.services-col:nth-child(2){transform:translateY(38px);background:rgba(58,24,37,.4)}
.services-split{grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(36px,7vw,110px)}
.services-split-media{min-height:500px}
.services-2col{gap:clamp(40px,10vw,150px)}
.services-2col>div{border-top:1px solid rgba(216,185,120,.28);padding-top:26px}

.portfolio-hero-grid,.about-hero-grid,.packages-hero-grid,.ei-hero-grid,.contact-page .hero-grid{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:clamp(40px,7vw,110px)}
.portfolio-hero-image,.about-hero-media,.packages-hero-media,.ei-hero-media,.contact-page .hero-media{height:clamp(430px,56vw,680px)}
.portfolio-intro-inner,.about-narrow{max-width:900px;text-align:left}
.portfolio-intro-inner p:first-of-type,.about-narrow p:first-of-type{font-family:var(--font-heading);font-size:clamp(1.3rem,2vw,2rem);line-height:1.45;color:var(--color-text-primary)}
.portfolio-grid{column-gap:18px}
.portfolio-card{margin-bottom:18px;background:#1b171b}
.portfolio-card:nth-child(3n+1){transform:translateY(20px)}
.portfolio-card-body{padding:28px}
.portfolio-projects-image{min-height:620px}
.portfolio-types-grid{grid-template-columns:repeat(12,1fr);gap:14px}
.portfolio-types-grid>*{grid-column:span 3;min-height:160px;display:flex;align-items:flex-end}

.about-card-grid-inner{gap:18px;align-items:start}
.about-card:nth-child(2){margin-top:52px}
.about-card{padding:38px;min-height:280px}
.about-two-col{grid-template-columns:.7fr 1fr 1fr}
.about-style-media{height:680px}
.about-style-text{margin-top:-270px;padding:52px;background:#efe7d8;color:#241a20}
.about-style-text p{color:#4a3b42}

.packages-cards{gap:18px;align-items:start}
.packages-card:nth-child(2){margin-top:72px}
.packages-card-body{padding:30px}
.packages-split{grid-template-columns:1.15fr .85fr;gap:clamp(40px,8vw,120px)}
.packages-split-media{height:620px}
.packages-lighting-media,.packages-entertainment-media,.packages-experience-media{height:clamp(400px,52vw,680px);margin-top:52px}

.ei-split{gap:clamp(40px,8vw,120px)}
.ei-split-media{height:560px}
.ei-centered-text{text-align:left;max-width:900px}
.ei-centered-text p:first-of-type{font-family:var(--font-heading);font-size:clamp(1.25rem,2vw,1.9rem);line-height:1.5;color:var(--color-text-primary)}

.contact-page .hero-text{max-width:none}
.why-grid{gap:18px;align-items:start}
.why-card{padding:36px;min-height:300px}
.why-card:nth-child(2){margin-top:48px}
.scope-grid,.individual-grid{gap:clamp(40px,8vw,120px)}
.form-wrap{max-width:1040px;background:#161216;border:1px solid rgba(216,185,120,.22);padding:clamp(28px,5vw,72px)}
.input,.textarea,.select{background:transparent;border:0;border-bottom:1px solid rgba(216,185,120,.42);padding:14px 2px}
.textarea{min-height:120px;resize:vertical}
.checkbox input{accent-color:var(--color-accent-gold)}
.faq-question{font-family:var(--font-heading);font-size:1.2rem;padding:24px 0;border:0;border-bottom:1px solid rgba(216,185,120,.25)}
.faq-question::after{content:"+";float:right;color:var(--color-accent-gold)}
.faq-item.active .faq-question::after{content:"−"}
.faq-answer{border:0;padding:20px 0}

.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:var(--color-accent-gold);margin:0}
.text-link{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid rgba(216,185,120,.5);padding-bottom:8px;width:max-content;max-width:100%}
.signature-section{background:#efe7d8!important;color:#22191e}
.signature-layout{display:grid;grid-template-columns:.45fr 1.5fr .65fr;gap:clamp(30px,6vw,96px);align-items:start}
.signature-layout h2{font-size:clamp(2.2rem,4vw,4.6rem)}
.signature-layout p:not(.section-kicker){color:#51434a;max-width:62ch}
.signature-layout .section-kicker,.signature-layout .text-link{color:#6e263f}
.signature-layout .text-link{border-color:rgba(110,38,63,.35);align-self:end}

.service-director{background:#351622!important}
.service-director-grid{display:grid;grid-template-columns:.45fr 1.15fr .75fr;gap:clamp(28px,5vw,76px)}
.quiet-list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(216,185,120,.25)}
.quiet-list li{padding:16px 0;margin:0;border-bottom:1px solid rgba(216,185,120,.16);color:#d8ced0}

.package-selector{background:#d8b978!important;color:#171115}
.package-selector-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,140px)}
.package-selector .section-kicker,.package-selector p{color:#4e333b}
.selector-notes p{display:grid;grid-template-columns:.42fr 1fr;gap:22px;padding:20px 0;margin:0;border-top:1px solid rgba(23,17,21,.25)}
.selector-notes strong{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}

.inspiration-palette-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:1px;background:rgba(216,185,120,.2);border:1px solid rgba(216,185,120,.2)}
.inspiration-palette-grid>div{background:#120f12;padding:clamp(28px,4vw,52px);min-height:320px}
.palette-card{display:flex;flex-direction:column;justify-content:flex-end}
.palette-card>span{color:var(--color-accent-gold);font-size:.72rem;letter-spacing:.15em;margin-bottom:auto}
.palette-card:nth-child(3){background:#311822}
.palette-card:nth-child(4){background:#22201f}

.contact-note{background:#351622!important}
.contact-note-grid{display:grid;grid-template-columns:.4fr 1fr 1fr;gap:clamp(30px,6vw,90px);align-items:start}
.contact-note-grid p:last-child{font-size:1.08rem}

.site-footer{background:#100d10;padding-top:clamp(72px,9vw,120px);border-top:1px solid rgba(216,185,120,.22)}
.footer-top h2{font-size:clamp(2rem,4vw,4.2rem);max-width:13ch}
.footer-grid{border-top:1px solid rgba(216,185,120,.18);padding-top:42px}
.footer-grid h4{text-transform:uppercase;letter-spacing:.14em;font-family:var(--font-body);font-size:.72rem;color:var(--color-accent-gold)}

@media(max-width:1100px){
  .brand-text{display:none}
  .nav-list{gap:14px}
  .nav-list a:not(.button){font-size:.68rem}
  .signature-layout,.service-director-grid,.contact-note-grid{grid-template-columns:.35fr 1fr}
  .signature-layout .text-link,.service-director-grid .quiet-list,.contact-note-grid p:last-child{grid-column:2}
  .inspiration-palette-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
  :root{--text-display:clamp(2.65rem,13vw,4.4rem)}
  .header-inner{min-height:72px}
  body.nav-open{overflow:hidden;touch-action:none}
  .site-header{z-index:3000}
  .nav-toggle{
    position:relative;
    z-index:2;
    transition:opacity .18s ease,visibility 0s linear 0s;
  }
  body.nav-open .nav-toggle{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,visibility 0s linear .18s;
  }
  .site-nav{
    inset:0;
    width:100%;
    height:100vh;
    height:100dvh;
    padding:96px 24px 34px;
    overflow-y:auto;
    transform:translate3d(100%,0,0);
    opacity:0;
    background:#100d10;
    backdrop-filter:none;
    visibility:hidden;
    pointer-events:none;
    will-change:transform,opacity;
    transition:
      transform .48s cubic-bezier(.76,0,.24,1),
      opacity .3s ease,
      visibility 0s linear .48s;
  }
  .site-nav.open{
    transform:translate3d(0,0,0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition:
      transform .48s cubic-bezier(.76,0,.24,1),
      opacity .3s ease,
      visibility 0s;
  }
  .nav-close{
    display:block;
    position:absolute;
    top:18px;
    right:18px;
    width:52px;
    height:52px;
    border:1px solid rgba(216,185,120,.4);
    background:#181318;
    z-index:3;
  }
  .nav-close span{
    position:absolute;
    left:14px;
    top:24px;
    width:22px;
    height:1px;
    background:var(--color-text-primary);
  }
  .nav-close span:first-child{transform:rotate(45deg)}
  .nav-close span:last-child{transform:rotate(-45deg)}
  .nav-list{
    width:100%;
    min-height:calc(100dvh - 130px);
    justify-content:center;
    align-items:stretch;
    gap:0;
  }
  .nav-list li{
    width:100%;
    border-bottom:1px solid rgba(216,185,120,.16);
    opacity:0;
    transform:translateX(28px);
    transition:opacity .28s ease,transform .38s cubic-bezier(.2,.75,.25,1);
  }
  .site-nav.open .nav-list li{opacity:1;transform:translateX(0)}
  .site-nav.open .nav-list li:nth-child(1){transition-delay:.12s}
  .site-nav.open .nav-list li:nth-child(2){transition-delay:.16s}
  .site-nav.open .nav-list li:nth-child(3){transition-delay:.20s}
  .site-nav.open .nav-list li:nth-child(4){transition-delay:.24s}
  .site-nav.open .nav-list li:nth-child(5){transition-delay:.28s}
  .site-nav.open .nav-list li:nth-child(6){transition-delay:.32s}
  .site-nav.open .nav-list li:nth-child(7){transition-delay:.36s}
  .nav-list a{display:flex;width:100%;align-items:center;padding:15px 0;line-height:1.08}
  .nav-list a:not(.button){font-family:var(--font-heading);font-size:clamp(1.65rem,8vw,2.35rem);text-transform:none;letter-spacing:0}
  .nav-list .button{justify-content:center;margin-top:22px;padding:15px 20px}
  .nav-list li:last-child{border-bottom:0}
  .home .hero-grid,.portfolio-hero-grid,.about-hero-grid,.packages-hero-grid,.ei-hero-grid,.contact-page .hero-grid{grid-template-columns:1fr}
  .home .hero-image{min-height:52vh;order:2}
  .hero-panel{padding:52px 18px}
  .intro-card{border-right:0;border-bottom:1px solid rgba(216,185,120,.2);padding-inline:0}
  .services-grid{display:grid;grid-template-columns:1fr}
  .services-grid .panel,.services-grid .panel:nth-child(2),.services-grid .panel:nth-child(3){grid-column:auto}
  .showcase-grid,.services-split,.packages-split{grid-template-columns:1fr}
  .showcase-grid .media{height:380px}
  .services-col:nth-child(2),.portfolio-card:nth-child(3n+1),.about-card:nth-child(2),.packages-card:nth-child(2),.why-card:nth-child(2){transform:none;margin-top:0}
  .services-col{padding:28px 0;border-left:0;border-top:1px solid rgba(216,185,120,.2)}
  .portfolio-types-grid{grid-template-columns:1fr 1fr}
  .portfolio-types-grid>*{grid-column:auto}
  .about-two-col{grid-template-columns:1fr}
  .about-style-media{height:420px}
  .about-style-text{margin:0;padding:36px 18px}
  .package-selector-grid{grid-template-columns:1fr}
  .signature-layout,.service-director-grid,.contact-note-grid{grid-template-columns:1fr}
  .signature-layout .text-link,.service-director-grid .quiet-list,.contact-note-grid p:last-child{grid-column:auto}
  .inspiration-palette-grid{grid-template-columns:1fr}
  .inspiration-palette-grid>div{min-height:240px}
  .process-step,.portfolio-step,.about-step{border-right:0;border-bottom:1px solid rgba(216,185,120,.16);padding-inline:0}
  .process-step::before,.portfolio-step::before,.about-step::before{left:0}
  .portfolio-projects-image,.services-split-media,.packages-split-media,.ei-split-media{min-height:0;height:360px}
}

@media(max-width:600px){
  .container{padding-inline:18px}
  .section{padding-block:64px}
  .portfolio-hero-image,.about-hero-media,.packages-hero-media,.ei-hero-media,.contact-page .hero-media{height:360px}
  .portfolio-types-grid{grid-template-columns:1fr}
  .selector-notes p{grid-template-columns:1fr;gap:6px}
  .consent{align-items:stretch;flex-direction:column}
  .consent-actions .button{flex:1}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
