:root{--red:#ef3e43;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#070707;color:#f4f4f4;font-family:Inter,Arial,sans-serif}img{display:block;width:100%}a{text-decoration:none;color:inherit}header{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;gap:30px;padding:14px 3vw;background:linear-gradient(#050505ee,#05050577,transparent)}.logo img{width:150px;max-height:70px;object-fit:contain}nav{margin-left:auto;display:flex;gap:26px;text-transform:uppercase;font-size:12px}.navtoggle{display:none;margin-left:auto;background:none;border:0;color:white;font-size:28px}.hero{min-height:100svh;position:relative;display:flex;align-items:center}.hero picture,.hero picture img,.shade{position:absolute;inset:0;width:100%;height:100%}.hero picture img{object-fit:cover;object-position:center 56%}.shade{background:linear-gradient(90deg,#050505ef 0,#050505b3 38%,#0002 75%)}.heroText{position:relative;z-index:2;width:min(92%,1450px);margin:auto}.heroText span,.kicker{color:#ef3e43;letter-spacing:.22em;font-size:12px;font-weight:600}.heroText h1,h2,h3{font-family:'Cormorant Garamond',serif}.heroText h1{font-size:clamp(62px,7vw,118px);line-height:.9;margin:18px 0}.heroText p{font:28px 'Cormorant Garamond',serif}.actions{display:flex;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;text-transform:uppercase;font-size:11px;letter-spacing:.08em;border:1px solid #777}.red{background:linear-gradient(135deg,#ef3e43,#a81828);border:0}.ghost{background:#0006}.section{padding:88px max(4vw,calc((100vw - 1450px)/2))}.alt{background:#101010}.section h2,.split h2,.cta h2{font-size:clamp(38px,4vw,66px);line-height:1;margin:10px 0 30px}.filters{display:flex;gap:20px;overflow:auto;margin-bottom:18px}.filters button{background:none;border:0;border-bottom:1px solid transparent;color:#999;text-transform:uppercase;font-size:10px;padding:8px 0}.filters .active{color:#fff;border-color:#ef3e43}.track{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory}.track article{position:relative;flex:0 0 min(360px,78vw);height:430px;scroll-snap-align:start;cursor:zoom-in}.track img{height:100%;object-fit:cover}.track b{position:absolute;left:16px;bottom:14px;background:#000a;padding:8px 10px;text-transform:uppercase;font-size:11px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#292929}.grid article{background:#101010;padding:28px;min-height:180px}.grid small{color:#ef3e43}.grid h3{font-size:27px;margin:12px 0 5px}.grid p,.lead,.split p{color:#aaa}.split{display:grid;grid-template-columns:1.05fr .95fr;min-height:650px}.split>img{height:100%;object-fit:cover}.split>div{padding:8vw 7vw;align-self:center}.stories{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:5px}.stories img{height:330px;object-fit:cover}.team{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.team article{background:#151515;border:1px solid #2b2b2b;text-align:center}.team article>div{height:260px;display:grid;place-items:center;font:70px 'Cormorant Garamond',serif;color:#333}.team article>img{height:260px;object-fit:cover;filter:grayscale(1);transition:.35s}.team article:hover>img{filter:grayscale(.15);transform:scale(1.015)}.team h3{margin:14px 0 0}.team p{color:#ef3e43;font-size:11px}.cta{padding:58px max(4vw,calc((100vw - 1450px)/2));display:flex;justify-content:space-between;align-items:center;gap:25px;background:linear-gradient(90deg,#1a0909,#090909)}footer{padding:50px max(4vw,calc((100vw - 1450px)/2));border-top:1px solid #222}footer img{width:190px}footer p,footer small{color:#888;font-size:12px}.lightbox{position:fixed;z-index:50;inset:0;background:#000e;display:none;align-items:center;justify-content:center;padding:4vw}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:90vh;width:auto}.lightbox button{position:absolute;right:25px;top:15px;background:none;border:0;color:white;font-size:42px}@media(max-width:900px){nav{position:fixed;inset:0;background:#070707f8;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translateX(100%);transition:.3s;font-size:18px}nav.open{transform:none}.navtoggle{display:block;z-index:30}.grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.split>img{height:55vw}.team{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.logo img{width:125px}.hero{min-height:92svh;align-items:end}.hero picture img{object-position:center 35%}.shade{background:linear-gradient(0deg,#070707f5 8%,#07070778 60%,#0001)}.heroText{padding:0 20px 70px}.heroText h1{font-size:56px}.heroText p{font-size:21px}.actions{flex-direction:column;align-items:flex-start}.section{padding:65px 20px}.grid{grid-template-columns:1fr}.split>img{height:65vh}.split>div{padding:55px 20px}.stories{grid-template-columns:1fr}.stories img{height:280px}.team{display:flex;overflow-x:auto}.team article{flex:0 0 78vw}.cta{padding:48px 20px;flex-direction:column;align-items:flex-start}footer{padding:45px 20px}}.team-note{margin-top:18px;color:#777;font-size:12px}.team .lead{color:#aaa}

/* Gallery lightbox v4 */
.lightbox{
  position:fixed;z-index:3000;inset:0;background:rgba(0,0,0,.96);
  display:none;align-items:center;justify-content:center;padding:34px 78px;
}
.lightbox.open{display:flex}
.lightbox-stage{
  position:relative;max-width:min(1400px,88vw);max-height:90vh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.lightbox-stage img{
  max-width:100%;max-height:82vh;width:auto;height:auto;object-fit:contain;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.lightbox-meta{
  width:100%;display:flex;justify-content:space-between;gap:20px;
  padding-top:10px;color:#cfcfcf;font-size:12px;letter-spacing:.04em;
}
.lightbox-caption{color:#fff}
.lightbox-counter{color:var(--red)}
.lightbox-close{
  position:absolute;right:24px;top:16px;background:none;border:0;color:#fff;
  font-size:44px;line-height:1;cursor:pointer;z-index:3;
}
.lightbox-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:52px;height:72px;border:1px solid #555;background:rgba(12,12,12,.72);
  color:#fff;font-size:42px;line-height:1;cursor:pointer;z-index:3;
  transition:.2s;
}
.lightbox-nav:hover{background:rgba(241,67,67,.92);border-color:var(--red)}
.lightbox-prev{left:18px}
.lightbox-next{right:18px}
.lightbox-item{cursor:zoom-in}

@media(max-width:700px){
  .lightbox{padding:20px 12px 72px}
  .lightbox-stage{max-width:100vw;max-height:86vh}
  .lightbox-stage img{max-height:74vh}
  .lightbox-nav{
    top:auto;bottom:12px;transform:none;width:58px;height:46px;font-size:34px;
  }
  .lightbox-prev{left:calc(50% - 70px)}
  .lightbox-next{right:calc(50% - 70px)}
  .lightbox-close{right:12px;top:8px}
  .lightbox-meta{padding:10px 6px 0;font-size:11px}
}

.lightbox-stage img{
  transition:opacity .22s ease, transform .22s ease;
}
.lightbox-stage img.is-changing{
  opacity:.15;
  transform:scale(.985);
}

/* V6 - Lightbox arrows centered left/right */
.lightbox-nav{
  position:fixed !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:56px;
  height:78px;
}
.lightbox-prev{
  left:22px !important;
  right:auto !important;
}
.lightbox-next{
  right:22px !important;
  left:auto !important;
}

@media(max-width:700px){
  .lightbox-nav{
    position:fixed !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    width:46px;
    height:62px;
    background:rgba(5,5,5,.62);
  }
  .lightbox-prev{left:8px !important}
  .lightbox-next{right:8px !important}
}

/* ===== NUNTA PAGE ===== */
.wedding-page{background:#070707}
.wedding-page .site-header{grid-template-columns:190px 1fr}
.wedding-page .site-header nav{display:flex;justify-content:flex-end;gap:25px}
.wedding-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.wedding-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.wedding-shade{position:absolute;inset:0;background:linear-gradient(0deg,#060606ed 3%,#0606062e 60%),linear-gradient(90deg,#050505b8,transparent 60%)}
.wedding-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:10vh}
.wedding-hero h1{font:600 clamp(55px,7vw,110px)/.92 "Cormorant Garamond",serif;margin:15px 0 25px;letter-spacing:-.025em}
.wedding-hero h1 em{font-weight:500;color:#ddd}
.wedding-hero-copy>p:not(.kicker){max-width:700px;color:#ddd;font-size:14px;letter-spacing:.04em}
.wedding-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.editorial-copy{font-size:15px;color:#aaa;max-width:620px}
.editorial-copy .signature{font-family:"Cormorant Garamond",serif;color:#fff;font-size:24px;margin-top:35px}
.wedding-feature{display:grid;grid-template-columns:1.2fr .8fr;min-height:700px;background:#0e0e0e}
.wedding-feature img{width:100%;height:100%;object-fit:cover}
.wedding-feature>div{align-self:center;padding:7vw}
.wedding-feature p{color:#aaa;max-width:500px}
.wedding-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:300px;gap:6px;margin-top:45px}
.wedding-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}
.wedding-grid figure.wg-tall{grid-row:span 2}
.wedding-grid figure.wg-wide{grid-column:span 2}
.wedding-grid img{width:100%;height:100%;object-fit:cover;transition:.55s}
.wedding-grid figure:hover img{transform:scale(1.025)}
.wedding-grid figcaption{position:absolute;left:15px;bottom:12px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;background:#050505aa;padding:5px 9px}
.gallery-hint{text-align:center;color:#666;font-size:11px;margin-top:18px}
.experience{background:#0d0d0d}
.experience-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:25px;margin-top:50px}
.experience-steps article{border-top:1px solid #333;padding-top:20px}
.experience-steps b{color:#ef3e43;font-size:12px}
.experience-steps h3{font-size:25px;margin:15px 0 8px}
.experience-steps p{color:#999;font-size:12px}
.quote-band{padding:9vw 10vw;text-align:center;background:#15100f}
.quote-band blockquote{font:500 clamp(30px,4vw,58px)/1.1 "Cormorant Garamond",serif;max-width:1100px;margin:0 auto 25px}
.quote-band span{color:#ef3e43;font-size:10px;letter-spacing:.2em}
.faq{max-width:1100px;margin:auto}
.faq details{border-top:1px solid #333;padding:20px 0}
.faq details:last-child{border-bottom:1px solid #333}
.faq summary{cursor:pointer;font:500 23px "Cormorant Garamond",serif}
.faq details p{color:#999;max-width:800px;font-size:13px}
.wedding-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#211010,#080808 58%)}
.wedding-contact h2{font-size:clamp(48px,6vw,90px)}
.wedding-contact>p{color:#aaa}
.contact-buttons{display:flex;justify-content:center;gap:10px;margin:35px 0 25px}
.contact-address{font-size:11px!important;letter-spacing:.08em}
.ghost{display:inline-flex;align-items:center;padding:0 24px;min-height:46px;border:1px solid #555;text-transform:uppercase;font-size:10px;letter-spacing:.1em}
.wedding-page footer{text-align:center;padding:45px 20px;background:#050505;border-top:1px solid #222}
.wedding-page footer img{width:170px;margin:0 auto 20px}
.wedding-page footer p{font-size:11px;color:#888;margin:5px}
@media(max-width:850px){
 .wedding-page .site-header{grid-template-columns:1fr auto}
 .wedding-page .site-header nav{position:fixed;inset:0;background:#080808f8;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translateX(100%);transition:.3s;font-size:18px}
 .wedding-page .site-header nav.open{transform:none}
 .wedding-intro,.wedding-feature{grid-template-columns:1fr}
 .wedding-feature img{height:60vh}
 .wedding-grid{grid-template-columns:1fr 1fr;grid-auto-rows:280px}
 .experience-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .wedding-hero{min-height:680px}
 .wedding-hero>img{object-position:60% center}
 .wedding-hero h1{font-size:52px}
 .wedding-hero-copy{padding:0 20px 70px}
 .wedding-grid{grid-template-columns:1fr;grid-auto-rows:60vh}
 .wedding-grid figure.wg-tall,.wedding-grid figure.wg-wide{grid-row:auto;grid-column:auto}
 .experience-steps{grid-template-columns:1fr}
 .contact-buttons{flex-direction:column;max-width:300px;margin:30px auto}
}

/* ===== V8 NUNTA FIXES ===== */
.wedding-page header.site-header{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:center;
  gap:28px;
  padding:12px 3vw;
  background:rgba(5,5,5,.90);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.wedding-page .wedding-logo{
  display:block;
  flex:0 0 auto;
}
.wedding-page .wedding-logo img{
  width:150px;
  max-height:68px;
  object-fit:contain;
}
.wedding-page header.site-header nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
}
.wedding-page header.site-header nav a{
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  position:relative;
  padding:12px 0;
}
.wedding-page header.site-header nav a::after{
  content:"";
  position:absolute;
  left:0;bottom:6px;
  width:0;height:1px;
  background:#ef3e43;
  transition:.25s;
}
.wedding-page header.site-header nav a:hover::after{width:100%}

.wedding-page .navtoggle{
  display:none;
  width:42px;height:42px;
  padding:8px;
  background:transparent;
  border:0;
  margin-left:auto;
  z-index:80;
}
.wedding-page .navtoggle span{
  display:block;
  width:25px;height:2px;
  margin:5px auto;
  background:#fff;
}

.wbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 24px;
  border:1px solid transparent;
  text-transform:uppercase;
  font:600 10px/1 Inter,Arial,sans-serif;
  letter-spacing:.1em;
  transition:.25s;
}
.wbtn:hover{transform:translateY(-2px)}
.wbtn-red{
  background:linear-gradient(135deg,#ef3e43,#a81828);
  color:#fff;
}
.wbtn-ghost{
  border-color:#555;
  background:rgba(0,0,0,.3);
  color:#fff;
}

.wedding-hero-copy .wbtn{margin-top:16px}

.wedding-feature img{
  min-height:700px;
  object-position:center;
}

.wedding-grid img{
  display:block;
}

/* Correct lightbox layering on the wedding page */
.wedding-page .lightbox{z-index:3000}
.wedding-page .lightbox-nav{
  position:fixed !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
}
.wedding-page .lightbox-prev{left:22px !important;right:auto !important}
.wedding-page .lightbox-next{right:22px !important;left:auto !important}

/* Mobile menu */
@media(max-width:850px){
  .wedding-page header.site-header{
    padding:10px 16px;
  }
  .wedding-page .wedding-logo img{width:128px}
  .wedding-page .navtoggle{display:block}
  .wedding-page header.site-header nav{
    position:fixed;
    inset:0;
    z-index:70;
    margin:0;
    background:rgba(7,7,7,.985);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    transform:translateX(100%);
    transition:.35s;
  }
  .wedding-page header.site-header nav.open{transform:translateX(0)}
  .wedding-page header.site-header nav a{font-size:18px}
  .wedding-feature img{min-height:0;height:60vh}
}
@media(max-width:600px){
  .wedding-page .lightbox-prev{left:8px !important}
  .wedding-page .lightbox-next{right:8px !important}
  .wedding-page .lightbox-nav{
    width:44px;
    height:62px;
    background:rgba(5,5,5,.62);
  }
}

/* ===== BOTEZ PAGE ===== */
.baptism-page{background:#0a0908}
.baptism-hero{height:100svh;min-height:700px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.baptism-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.baptism-shade{position:absolute;inset:0;background:linear-gradient(0deg,#090807f2 2%,#09080748 58%,#0001),linear-gradient(90deg,#090807a8,transparent 65%)}
.baptism-page .wedding-hero-copy{position:relative;z-index:2}
.baptism-page .wedding-hero-copy h1{color:#fff}
.baptism-page .wedding-hero-copy h1 em{color:#e9dfd5}
.baptism-feature{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:#12100e}
.baptism-feature img{width:100%;height:100%;object-fit:cover}
.baptism-feature>div{align-self:center;padding:7vw}
.baptism-feature p{color:#aaa;max-width:520px}
.baptism-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:300px;gap:7px;margin-top:45px}
.baptism-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#151311}
.baptism-grid .bg-tall{grid-row:span 2}
.baptism-grid .bg-wide{grid-column:span 2}
.baptism-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}
.baptism-grid figure:hover img{transform:scale(1.025)}
.baptism-grid figcaption{position:absolute;left:15px;bottom:12px;padding:5px 9px;background:#080706b5;font-size:10px;text-transform:uppercase;letter-spacing:.18em}
.baptism-experience{background:#100e0c}
.experience-steps.four{grid-template-columns:repeat(4,1fr)}
.baptism-quote{padding:9vw 8vw;text-align:center;background:#18130f}
.baptism-quote blockquote{font:500 clamp(32px,4.3vw,62px)/1.1 "Cormorant Garamond",serif;max-width:1050px;margin:0 auto 25px}
.baptism-quote blockquote em{color:#e6d8cb;font-weight:500}
.baptism-quote span{font-size:10px;color:#ef3e43;letter-spacing:.2em}
.baptism-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#21140f,#080808 60%)}
.baptism-contact h2{font-size:clamp(48px,6vw,88px)}
.baptism-contact>p{color:#aaa}
@media(max-width:850px){
 .baptism-feature{grid-template-columns:1fr}
 .baptism-feature img{height:60vh}
 .baptism-grid{grid-template-columns:1fr 1fr;grid-auto-rows:290px}
 .experience-steps.four{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .baptism-hero>img{object-position:center}
 .baptism-grid{grid-template-columns:1fr;grid-auto-rows:60vh}
 .baptism-grid .bg-tall,.baptism-grid .bg-wide{grid-row:auto;grid-column:auto}
 .experience-steps.four{grid-template-columns:1fr}
}

/* ===== MAJORAT PAGE ===== */
.majorat-page{background:#060607}
.majorat-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.majorat-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.majorat-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050506f5 0,#05050655 60%),linear-gradient(90deg,#050506d8,transparent 65%)}
.majorat-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:8vh}
.majorat-copy .eighteen{position:absolute;right:0;bottom:-3vh;font:700 clamp(170px,27vw,420px)/.7 "Cormorant Garamond",serif;color:#ffffff09;letter-spacing:-.08em;pointer-events:none}
.majorat-copy h1{font:600 clamp(56px,7vw,108px)/.9 "Cormorant Garamond",serif;margin:12px 0 25px;position:relative}
.majorat-copy h1 em{color:#ddd;font-weight:500}
.majorat-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}
.majorat-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.majorat-feature{display:grid;grid-template-columns:.35fr .65fr 1fr;min-height:650px;background:#101012;align-items:stretch}
.majorat-feature>div:not(.majorat-number){align-self:center;padding:6vw 4vw}
.majorat-feature img{width:100%;height:100%;object-fit:cover;filter:contrast(1.06)}
.majorat-number{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center;font:700 90px "Cormorant Garamond",serif;color:#ef3e43;border-right:1px solid #29292d}
.majorat-feature p{color:#999}
.majorat-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:6px;margin-top:45px}
.majorat-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}
.majorat-grid .mg-tall{grid-row:span 2}.majorat-grid .mg-wide{grid-column:span 2}
.majorat-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}
.majorat-grid figure:hover img{transform:scale(1.03)}
.majorat-grid figcaption{position:absolute;left:15px;bottom:12px;background:#050505bb;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.majorat-experience{background:#0e0e11}
.majorat-addon{display:grid;grid-template-columns:1fr .55fr;align-items:center;padding:7vw 10vw;background:#ef3e43;color:#fff}
.majorat-addon h2{font-size:clamp(48px,6vw,88px);margin:12px 0}.majorat-addon p{max-width:650px}
.addon-mark{text-align:right;font:700 clamp(65px,10vw,160px)/.65 "Cormorant Garamond",serif;opacity:.16}
.majorat-quote{padding:9vw 8vw;text-align:center;background:#111}
.majorat-quote blockquote{font:500 clamp(32px,4.3vw,62px)/1.1 "Cormorant Garamond",serif;max-width:1050px;margin:0 auto 25px}
.majorat-quote blockquote em{color:#ef3e43}.majorat-quote span{font-size:10px;letter-spacing:.2em;color:#777}
.majorat-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#261015,#070708 60%)}
.majorat-contact h2{font-size:clamp(50px,6vw,90px)}.majorat-contact>p{color:#aaa}
@media(max-width:850px){.majorat-intro{grid-template-columns:1fr}.majorat-feature{grid-template-columns:90px 1fr}.majorat-feature img{grid-column:1/-1;height:60vh}.majorat-grid{grid-template-columns:1fr 1fr}.majorat-addon{grid-template-columns:1fr}.addon-mark{text-align:left;margin-top:50px}}
@media(max-width:600px){.majorat-copy h1{font-size:54px}.majorat-copy .eighteen{font-size:220px}.majorat-grid{grid-template-columns:1fr;grid-auto-rows:60vh}.majorat-grid .mg-tall,.majorat-grid .mg-wide{grid-row:auto;grid-column:auto}.majorat-feature{grid-template-columns:55px 1fr}.majorat-number{font-size:52px}}

/* ===== FAMILY PAGE ===== */
.family-page{background:#0b0a09}
.family-hero{height:100svh;min-height:700px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.family-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.family-shade{position:absolute;inset:0;background:linear-gradient(0deg,#090807f0 0,#09080740 62%),linear-gradient(90deg,#090807ba,transparent 68%)}
.family-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}
.family-hero-copy h1{font:600 clamp(55px,7vw,105px)/.92 "Cormorant Garamond",serif;margin:14px 0 24px}
.family-hero-copy h1 em{font-weight:500;color:#e9e0d7}.family-hero-copy>p:not(.kicker){color:#ddd;margin-bottom:20px}
.family-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.family-feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:660px;background:#14110e}
.family-feature img{width:100%;height:100%;object-fit:cover}.family-feature>div{align-self:center;padding:7vw}.family-feature p{color:#aaa}
.family-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:300px;gap:7px;margin-top:45px}
.family-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#14110f}.family-grid .fg-tall{grid-row:span 2}.family-grid .fg-wide{grid-column:span 2}
.family-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}.family-grid figure:hover img{transform:scale(1.025)}
.family-grid figcaption{position:absolute;left:15px;bottom:12px;background:#080706b5;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.family-experience{background:#11100e}
.family-types{padding:8vw 10vw;background:#e8e0d6;color:#17130f;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:start}
.family-types .kicker{color:#b62931}.family-types-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#c9c0b6}
.family-types-grid article{background:#e8e0d6;padding:28px;min-height:175px}.family-types-grid span{color:#b62931;font-size:11px}.family-types-grid h3{font-size:28px;margin:10px 0 5px}.family-types-grid p{font-size:13px;color:#655d55}
.family-quote{padding:9vw 8vw;text-align:center;background:#17120e}.family-quote blockquote{font:500 clamp(32px,4.3vw,62px)/1.1 "Cormorant Garamond",serif;max-width:1050px;margin:0 auto 25px}.family-quote blockquote em{color:#e2d4c6}.family-quote span{font-size:10px;color:#ef3e43;letter-spacing:.2em}
.family-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#231711,#080808 60%)}.family-contact h2{font-size:clamp(50px,6vw,90px)}.family-contact>p{color:#aaa}
@media(max-width:850px){.family-intro,.family-feature,.family-types{grid-template-columns:1fr}.family-feature img{height:60vh}.family-grid{grid-template-columns:1fr 1fr}.family-types-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.family-hero-copy h1{font-size:52px}.family-grid{grid-template-columns:1fr;grid-auto-rows:60vh}.family-grid .fg-tall,.family-grid .fg-wide{grid-row:auto;grid-column:auto}.family-types-grid{grid-template-columns:1fr}}

/* ===== PORTRAIT PAGE ===== */
.portrait-page{background:#060606}
.portrait-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.portrait-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.portrait-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050505f5 0,#05050520 60%),linear-gradient(90deg,#050505db 0,#05050558 45%,transparent 72%)}
.portrait-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}
.portrait-hero-copy h1{font:600 clamp(56px,7vw,108px)/.9 "Cormorant Garamond",serif;margin:14px 0 24px}
.portrait-hero-copy h1 em{font-weight:500;color:#ddd}.portrait-hero-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}
.portrait-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.portrait-feature{display:grid;grid-template-columns:.26fr 1fr .74fr;min-height:720px;background:#0c0c0c}
.portrait-feature img{width:100%;height:100%;object-fit:cover;filter:grayscale(.2)}
.portrait-feature>div:not(.portrait-words){align-self:center;padding:6vw 5vw}
.portrait-feature p{color:#999}
.portrait-words{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:45px;border-right:1px solid #252525}
.portrait-words span{writing-mode:vertical-rl;transform:rotate(180deg);font:600 12px Inter,sans-serif;letter-spacing:.28em;color:#666}
.portrait-words span:nth-child(2){color:#ef3e43}
.portrait-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:320px;gap:5px;margin-top:45px}
.portrait-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}.portrait-grid .pg-tall{grid-row:span 2}.portrait-grid .pg-wide{grid-column:span 2}
.portrait-grid img{width:100%;height:100%;object-fit:cover;transition:.45s;filter:contrast(1.03)}.portrait-grid figure:hover img{transform:scale(1.025)}
.portrait-grid figcaption{position:absolute;left:15px;bottom:12px;background:#050505bd;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.portrait-experience{background:#0d0d0d}
.portrait-types{padding:8vw 10vw;background:#111;color:#eee;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}
.portrait-types-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#2c2c2c}
.portrait-types-grid article{background:#111;padding:30px;min-height:180px}.portrait-types-grid span{font-size:11px;color:#ef3e43}.portrait-types-grid h3{font-size:29px;margin:10px 0 5px}.portrait-types-grid p{color:#888;font-size:13px}
.portrait-quote{padding:9vw 8vw;text-align:center;background:#0a0a0a;border-top:1px solid #222;border-bottom:1px solid #222}
.portrait-quote blockquote{font:500 clamp(32px,4.4vw,64px)/1.08 "Cormorant Garamond",serif;max-width:1050px;margin:0 auto 25px}.portrait-quote blockquote em{color:#ef3e43}.portrait-quote span{font-size:10px;letter-spacing:.2em;color:#777}
.portrait-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#1d0c10,#060606 60%)}.portrait-contact h2{font-size:clamp(50px,6vw,90px)}.portrait-contact>p{color:#999}
@media(max-width:850px){.portrait-intro,.portrait-types{grid-template-columns:1fr}.portrait-feature{grid-template-columns:70px 1fr}.portrait-feature img{grid-column:1/-1;height:60vh}.portrait-grid{grid-template-columns:1fr 1fr}.portrait-types-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.portrait-hero-copy h1{font-size:52px}.portrait-grid{grid-template-columns:1fr;grid-auto-rows:60vh}.portrait-grid .pg-tall,.portrait-grid .pg-wide{grid-row:auto;grid-column:auto}.portrait-feature{grid-template-columns:50px 1fr}.portrait-types-grid{grid-template-columns:1fr}}

/* ===== BOUDOIR PAGE ===== */
.boudoir-page{background:#070606}
.boudoir-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.boudoir-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.boudoir-shade{position:absolute;inset:0;background:linear-gradient(0deg,#060505f4 0,#06050530 60%),linear-gradient(90deg,#060505dc 0,#06050570 45%,transparent 72%)}
.boudoir-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}
.boudoir-hero-copy h1{font:600 clamp(58px,7vw,110px)/.9 "Cormorant Garamond",serif;margin:14px 0 24px}
.boudoir-hero-copy h1 em{font-weight:500;color:#e5d6d4}.boudoir-hero-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}
.boudoir-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.boudoir-feature{display:grid;grid-template-columns:.24fr 1fr .76fr;min-height:720px;background:#0c0909}
.boudoir-feature img{width:100%;height:100%;object-fit:cover;filter:contrast(1.05) saturate(.85)}
.boudoir-feature>div:not(.boudoir-lines){align-self:center;padding:6vw 5vw}.boudoir-feature p{color:#999}
.boudoir-lines{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:45px;border-right:1px solid #2a2020}
.boudoir-lines span{writing-mode:vertical-rl;transform:rotate(180deg);font:600 11px Inter,sans-serif;letter-spacing:.28em;color:#675c5c}.boudoir-lines span:nth-child(2){color:#ef3e43}
.boudoir-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:320px;gap:5px;margin-top:45px}
.boudoir-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}.boudoir-grid .bg-tall{grid-row:span 2}.boudoir-grid .bg-wide{grid-column:span 2}
.boudoir-grid img{width:100%;height:100%;object-fit:cover;transition:.45s;filter:saturate(.78) contrast(1.04)}.boudoir-grid figure:hover img{transform:scale(1.02)}
.boudoir-grid figcaption{position:absolute;left:15px;bottom:12px;background:#050505c5;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.boudoir-experience{background:#0d0a0a}
.boudoir-privacy{display:grid;grid-template-columns:1fr .55fr;align-items:center;padding:8vw 10vw;background:#171010}.boudoir-privacy p{max-width:700px;color:#b8aaaa}.privacy-mark{text-align:right;font:700 clamp(60px,10vw,150px)/.7 "Cormorant Garamond",serif;color:#fff;opacity:.055;letter-spacing:.04em}
.boudoir-types{padding:8vw 10vw;background:#e7dfdd;color:#161212;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}
.boudoir-types .kicker{color:#a9222f}.boudoir-types-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#c9bebe}
.boudoir-types-grid article{background:#e7dfdd;padding:30px;min-height:180px}.boudoir-types-grid span{font-size:11px;color:#a9222f}.boudoir-types-grid h3{font-size:29px;margin:10px 0 5px}.boudoir-types-grid p{font-size:13px;color:#665b5b}
.boudoir-quote{padding:9vw 8vw;text-align:center;background:#100b0c}.boudoir-quote blockquote{font:500 clamp(32px,4.4vw,64px)/1.08 "Cormorant Garamond",serif;max-width:1080px;margin:0 auto 25px}.boudoir-quote blockquote em{color:#ef3e43}.boudoir-quote span{font-size:10px;letter-spacing:.2em;color:#766}
.boudoir-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#281116,#060505 60%)}.boudoir-contact h2{font-size:clamp(50px,6vw,90px)}.boudoir-contact>p{color:#aaa}
@media(max-width:850px){.boudoir-intro,.boudoir-types{grid-template-columns:1fr}.boudoir-feature{grid-template-columns:70px 1fr}.boudoir-feature img{grid-column:1/-1;height:60vh}.boudoir-grid{grid-template-columns:1fr 1fr}.boudoir-privacy{grid-template-columns:1fr}.privacy-mark{text-align:left;margin-top:45px}.boudoir-types-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.boudoir-hero-copy h1{font-size:53px}.boudoir-grid{grid-template-columns:1fr;grid-auto-rows:60vh}.boudoir-grid .bg-tall,.boudoir-grid .bg-wide{grid-row:auto;grid-column:auto}.boudoir-feature{grid-template-columns:50px 1fr}.boudoir-types-grid{grid-template-columns:1fr}}

/* ===== STUDIO FOTO PAGE ===== */
.studio-page{background:#070707}
.studio-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.studio-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.studio-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050505f5 0,#05050530 60%),linear-gradient(90deg,#050505d8 0,#05050565 45%,transparent 72%)}
.studio-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}
.studio-hero-copy h1{font:600 clamp(56px,7vw,108px)/.9 "Cormorant Garamond",serif;margin:14px 0 24px}
.studio-hero-copy h1 em{font-weight:500;color:#ddd}.studio-hero-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}
.studio-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.studio-tech{display:grid;grid-template-columns:.85fr 1.15fr;min-height:680px;background:#0d0d0d}
.studio-tech img{width:100%;height:100%;object-fit:cover}.studio-tech-copy{align-self:center;padding:7vw}.studio-tech-copy p{color:#999}.studio-tech-copy ul{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:10px;color:#ccc;font-size:13px}.studio-tech-copy li:before{content:"•";color:#ef3e43;margin-right:10px}
.studio-services{background:#0f0f0f}
.studio-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#292929;margin-top:40px}
.studio-service-grid article{background:#0f0f0f;padding:30px;min-height:185px}.studio-service-grid span{font-size:11px;color:#ef3e43}.studio-service-grid h3{font-size:29px;margin:10px 0 5px}.studio-service-grid p{font-size:13px;color:#888}
.studio-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:6px;margin-top:45px}
.studio-gallery figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}.studio-gallery .sg-tall{grid-row:span 2}.studio-gallery .sg-wide{grid-column:span 2}
.studio-gallery img{width:100%;height:100%;object-fit:cover;transition:.45s}.studio-gallery figure:hover img{transform:scale(1.025)}
.studio-gallery figcaption{position:absolute;left:15px;bottom:12px;background:#050505be;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.thematic-section{display:grid;grid-template-columns:1.1fr .9fr;background:#15171d;min-height:720px}
.thematic-photo img{width:100%;height:100%;object-fit:cover}.thematic-copy{align-self:center;padding:7vw}.thematic-copy p{color:#b0b2ba;max-width:620px}
.studio-experience{background:#0e0e0e}
.studio-quote{padding:9vw 8vw;text-align:center;background:#111}.studio-quote blockquote{font:500 clamp(32px,4.4vw,64px)/1.08 "Cormorant Garamond",serif;max-width:1080px;margin:0 auto 25px}.studio-quote blockquote em{color:#ef3e43}.studio-quote span{font-size:10px;letter-spacing:.2em;color:#777}
.studio-contact-page{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#1e0d10,#060606 60%)}.studio-contact-page h2{font-size:clamp(50px,6vw,90px)}.studio-contact-page>p{color:#999}
@media(max-width:850px){
 .studio-intro,.studio-tech,.thematic-section{grid-template-columns:1fr}
 .studio-tech img,.thematic-photo{height:60vh}
 .studio-service-grid{grid-template-columns:1fr 1fr}
 .studio-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .studio-hero-copy h1{font-size:52px}
 .studio-service-grid{grid-template-columns:1fr}
 .studio-gallery{grid-template-columns:1fr;grid-auto-rows:60vh}
 .studio-gallery .sg-tall,.studio-gallery .sg-wide{grid-row:auto;grid-column:auto}
}

/* ===== PRODUCT / FOOD PAGE ===== */
.product-page{background:#070707}
.product-hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.product-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.product-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050505f6 0,#0505052b 58%),linear-gradient(90deg,#050505de 0,#05050560 48%,transparent 75%)}
.product-hero-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}
.product-hero-copy h1{font:600 clamp(58px,7vw,110px)/.9 "Cormorant Garamond",serif;margin:14px 0 24px}
.product-hero-copy h1 em{font-weight:500;color:#ddd}.product-hero-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}
.product-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.product-directions{display:grid;grid-template-columns:.7fr 1.3fr;background:#0e0e0e}
.direction-main{padding:7vw;align-self:center}.direction-main p{color:#999}
.direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#2a2a2a}
.direction-grid article{background:#101010}.direction-grid img{width:100%;height:240px;object-fit:cover}.direction-grid article>div{padding:22px}.direction-grid span{font-size:10px;color:#ef3e43}.direction-grid h3{font-size:27px;margin:8px 0}.direction-grid p{font-size:12px;color:#888}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:6px;margin-top:45px}
.product-grid figure{margin:0;position:relative;overflow:hidden;cursor:zoom-in;background:#111}.product-grid .prd-tall{grid-row:span 2}.product-grid .prd-wide{grid-column:span 2}
.product-grid img{width:100%;height:100%;object-fit:cover;transition:.45s}.product-grid figure:hover img{transform:scale(1.02)}
.product-grid figcaption{position:absolute;left:15px;bottom:12px;background:#050505c2;padding:5px 9px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.commercial-workflow{background:#0e0e0e}
.commercial-use{padding:8vw 10vw;background:#ef3e43;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center}
.commercial-use .kicker{color:#fff9}.use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff35}.use-grid span{display:grid;place-items:center;min-height:100px;background:#ef3e43;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.commercial-quote{padding:9vw 8vw;text-align:center;background:#101010}.commercial-quote blockquote{font:500 clamp(32px,4.4vw,64px)/1.08 "Cormorant Garamond",serif;max-width:1080px;margin:0 auto 25px}.commercial-quote blockquote em{color:#ef3e43}.commercial-quote span{font-size:10px;letter-spacing:.2em;color:#777}
.product-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#241014,#060606 60%)}.product-contact h2{font-size:clamp(50px,6vw,90px)}.product-contact>p{color:#999}
@media(max-width:850px){.product-intro,.product-directions,.commercial-use{grid-template-columns:1fr}.direction-grid{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}.use-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.product-hero-copy h1{font-size:52px}.direction-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr;grid-auto-rows:60vh}.product-grid .prd-tall,.product-grid .prd-wide{grid-row:auto;grid-column:auto}.use-grid{grid-template-columns:1fr 1fr}}

/* ===== V18 PRODUCT TEXT VISIBILITY FIX ===== */
.product-page .direction-grid article{
  display:flex;
  flex-direction:column;
  min-height:430px;
  overflow:hidden;
}
.product-page .direction-grid img{
  display:block;
  flex:0 0 235px;
  height:235px;
  object-fit:cover;
}
.product-page .direction-grid article>div{
  position:relative;
  z-index:2;
  flex:1;
  padding:24px 24px 28px;
  background:#101010;
}
.product-page .direction-grid h3{
  color:#fff !important;
  font-size:30px;
  line-height:1.05;
  margin:9px 0 10px;
}
.product-page .direction-grid p{
  color:#b8b8b8 !important;
  font-size:13px;
  line-height:1.65;
  margin:0;
}
.product-page .direction-grid span{
  color:#ef3e43 !important;
  font-weight:600;
}

/* Make gallery labels unmistakably visible */
.product-page .product-grid figcaption{
  z-index:4;
  left:14px;
  bottom:14px;
  color:#fff !important;
  background:rgba(5,5,5,.88) !important;
  border-left:2px solid #ef3e43;
  padding:7px 11px;
  font-weight:600;
  text-shadow:0 1px 2px #000;
}
.product-page .product-grid figure::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:28%;
  background:linear-gradient(transparent,rgba(0,0,0,.72));
  pointer-events:none;
  z-index:2;
}

@media(max-width:600px){
  .product-page .direction-grid article{min-height:auto}
  .product-page .direction-grid img{height:220px;flex-basis:220px}
}

/* V19 CABINA FOTO DEVA */
.booth-page{background:#070707}.booth-hero{height:100svh;min-height:700px;position:relative;display:flex;align-items:flex-end;overflow:hidden}.booth-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.booth-shade{position:absolute;inset:0;background:linear-gradient(0deg,#050505f5,#05050522 60%),linear-gradient(90deg,#050505d9,transparent 72%)}.booth-copy{position:relative;z-index:2;width:min(92%,1200px);margin:0 auto;padding-bottom:9vh}.booth-copy h1{font:600 clamp(62px,8vw,125px)/.84 "Cormorant Garamond",serif;margin:14px 0 24px}.booth-copy h1 em{color:#ef3e43}.booth-copy>p:not(.kicker){color:#bbb;margin-bottom:20px}.booth-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.booth-feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:650px;background:#101010}.booth-feature img{width:100%;height:100%;object-fit:cover}.booth-feature>div{align-self:center;padding:7vw}.booth-feature p{color:#999}.booth-includes{background:#0e0e0e}.booth-events{padding:8vw 10vw;background:#ef3e43;color:#fff;display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.booth-event-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ffffff35}.booth-event-grid article{padding:28px;background:#ef3e43;min-height:145px}.booth-event-grid b{font:600 27px "Cormorant Garamond",serif}.booth-event-grid p{font-size:13px}.booth-quote{padding:9vw 8vw;text-align:center;background:#101010}.booth-quote blockquote{font:500 clamp(32px,4.4vw,64px)/1.08 "Cormorant Garamond",serif;max-width:1080px;margin:0 auto 25px}.booth-quote blockquote em{color:#ef3e43}.booth-contact{text-align:center;padding:9vw 20px;background:radial-gradient(circle at center,#2a1116,#060606 60%)}.booth-contact h2{font-size:clamp(50px,6vw,90px)}.booth-contact>p{color:#999}@media(max-width:850px){.booth-intro,.booth-feature,.booth-events{grid-template-columns:1fr}.booth-feature img{height:60vh}}@media(max-width:600px){.booth-copy h1{font-size:58px}.booth-event-grid{grid-template-columns:1fr}}

/* ===== V20 CABINA FOTO REAL MEDIA ===== */
.booth-video-section{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:5vw;
  align-items:center;
  padding:8vw 8vw;
  background:#0b0b0b;
}
.booth-video-copy p{color:#999;max-width:520px}
.booth-video-wrap{
  overflow:hidden;
  border-radius:4px;
  box-shadow:0 30px 80px rgba(0,0,0,.45);
  background:#000;
}
.booth-video-wrap video{display:block;width:100%;height:auto;max-height:72vh;background:#000}

.booth-gallery-section{background:#0d0d0d}
.booth-gallery{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:310px;
  gap:6px;
  margin-top:45px;
}
.booth-gallery figure{
  margin:0;
  position:relative;
  overflow:hidden;
  cursor:zoom-in;
  background:#111;
}
.booth-gallery .booth-wide{grid-column:span 2}
.booth-gallery .booth-tall{grid-row:span 2}
.booth-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.booth-gallery figure:hover img{transform:scale(1.025)}
.booth-gallery figcaption{
  position:absolute;
  left:14px;
  bottom:13px;
  z-index:3;
  color:#fff;
  background:rgba(5,5,5,.82);
  border-left:2px solid #ef3e43;
  padding:6px 10px;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.booth-gallery figure::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:26%;
  background:linear-gradient(transparent,rgba(0,0,0,.65));
  pointer-events:none;
}

.lightbox{
  position:fixed;
  inset:0;
  z-index:9999;
  background:rgba(0,0,0,.94);
  display:none;
  align-items:center;
  justify-content:center;
}
.lightbox.open{display:flex}
.lightbox-stage{
  position:relative;
  width:min(88vw,1500px);
  height:min(86vh,1000px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.lightbox-stage img{max-width:100%;max-height:100%;object-fit:contain}
.lightbox-meta{
  position:absolute;
  left:0;right:0;bottom:-35px;
  display:flex;
  justify-content:space-between;
  color:#bbb;
  font-size:12px;
}
.lightbox-close{
  position:absolute;
  right:24px;top:18px;
  width:50px;height:50px;
  border:0;background:transparent;color:white;
  font-size:42px;cursor:pointer;z-index:2;
}
.lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:58px;height:78px;
  border:0;
  background:rgba(0,0,0,.42);
  color:white;
  font-size:54px;
  line-height:1;
  cursor:pointer;
  z-index:3;
}
.lightbox-prev{left:18px}
.lightbox-next{right:18px}

@media(max-width:850px){
  .booth-video-section{grid-template-columns:1fr;padding:90px 6vw}
  .booth-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .booth-gallery{grid-template-columns:1fr;grid-auto-rows:58vh}
  .booth-gallery .booth-wide,.booth-gallery .booth-tall{grid-column:auto;grid-row:auto}
  .lightbox-nav{width:46px;height:66px;font-size:44px}
  .lightbox-prev{left:4px}.lightbox-next{right:4px}
}

/* ===== V22 TEMPLATE SLIDER ===== */
.template-showcase{
  padding:9vw 5vw 8vw;
  background:#090909;
  overflow:hidden;
}
.template-showcase-head{
  width:min(1180px,92vw);
  margin:0 auto 45px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:6vw;
  align-items:end;
}
.template-showcase-head h2{
  margin:.35em 0 0;
  font:600 clamp(44px,5vw,78px)/.95 "Cormorant Garamond",serif;
}
.template-showcase-head p{color:#999;max-width:520px}
.template-slider-shell{
  position:relative;
  width:min(1380px,94vw);
  margin:0 auto;
}
.template-slider{
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:5px 2px 18px;
}
.template-slider::-webkit-scrollbar{display:none}
.template-slide{
  flex:0 0 clamp(300px,39vw,560px);
  aspect-ratio:3/2;
  border:0;
  padding:0;
  background:#111;
  cursor:zoom-in;
  scroll-snap-align:start;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,.28);
}
.template-slide img{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#f5f5f5;
  display:block;
  transition:transform .35s ease;
}
.template-slide:hover img{transform:scale(1.012)}
.template-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:4;
  width:54px;
  height:74px;
  border:1px solid #ffffff24;
  background:rgba(5,5,5,.72);
  color:#fff;
  font-size:48px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(8px);
}
.template-prev{left:-18px}
.template-next{right:-18px}
.template-hint{
  width:min(1380px,94vw);
  margin:14px auto 0;
  color:#777;
  font-size:11px;
  letter-spacing:.08em;
  text-align:center;
}
@media(max-width:850px){
  .template-showcase{padding:90px 5vw 75px}
  .template-showcase-head{grid-template-columns:1fr}
  .template-slide{flex-basis:78vw}
  .template-arrow{width:44px;height:62px;font-size:40px}
  .template-prev{left:0}.template-next{right:0}
}
@media(max-width:560px){
  .template-slide{flex-basis:88vw}
}

/* ===== V24 BLOG ARTICLE ===== */
.article-page{background:#080808}
.article-hero{height:82vh;min-height:650px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.article-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.article-shade{position:absolute;inset:0;background:linear-gradient(0deg,#080808f5,#08080820 62%),linear-gradient(90deg,#080808c8,transparent 70%)}
.article-hero-copy{position:relative;z-index:2;width:min(92%,1100px);margin:0 auto;padding-bottom:8vh}
.article-hero-copy h1{font:600 clamp(58px,7vw,108px)/.9 "Cormorant Garamond",serif;margin:12px 0 20px}
.article-hero-copy h1 em{font-weight:500;color:#ddd}
.article-body{width:min(860px,88vw);margin:0 auto;padding:8vw 0}
.article-meta{display:flex;gap:20px;color:#ef3e43;font-size:10px;letter-spacing:.14em;margin-bottom:25px}
.article-body h2{font:600 clamp(38px,4vw,58px)/1 "Cormorant Garamond",serif;margin:0 0 30px}
.article-body p{color:#aaa;font-size:15px;line-height:1.9}
.article-body blockquote{font:500 clamp(28px,3.3vw,48px)/1.12 "Cormorant Garamond",serif;border-left:2px solid #ef3e43;margin:45px 0;padding-left:28px;color:#eee}
.article-gallery{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:360px;gap:6px;margin-top:35px}
.article-gallery figure{margin:0;position:relative;overflow:hidden}.article-gallery .ag-wide{grid-column:span 2}
.article-gallery img{width:100%;height:100%;object-fit:cover}
.article-gallery figcaption{position:absolute;left:14px;bottom:12px;background:#000b;color:#fff;padding:5px 9px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.article-next,.article-contact{text-align:center;padding:8vw 20px}
.article-next{background:#111}.article-contact{background:radial-gradient(circle at center,#211015,#070707 60%)}
.article-next h2,.article-contact h2{font-size:clamp(48px,6vw,84px)}
@media(max-width:650px){.article-hero-copy h1{font-size:52px}.article-gallery{grid-template-columns:1fr;grid-auto-rows:58vh}.article-gallery .ag-wide{grid-column:auto}}

/* ===== V25 BLOG PAGE FIX ===== */
.blog-page{background:#080808;color:#fff}
.blog-page main{padding-top:0}
.blog-hero{position:relative;min-height:430px;padding:150px 6vw 70px;display:flex;align-items:flex-end;overflow:hidden;background:#0a0a0a}
.blog-hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 18% 30%,rgba(239,62,67,.12),transparent 34%),linear-gradient(180deg,#0b0b0b,#080808)}
.blog-hero-copy{position:relative;z-index:2;width:min(1380px,100%);margin:0 auto}
.blog-hero-copy .kicker{margin:0 0 18px;color:#ef3e43;font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.blog-hero-copy h1{margin:0;font:600 clamp(52px,6vw,92px)/.92 "Cormorant Garamond",serif;max-width:900px;color:#f5f5f5}
.blog-hero-copy h1 em{font-weight:500;color:#aaa}
.blog-list{padding:70px 6vw 110px}
.blog-grid{width:min(1380px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.blog-card{background:#101010;border:1px solid rgba(255,255,255,.08);overflow:hidden}
.blog-card>img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.blog-card>div{padding:28px}
.blog-card .kicker{color:#ef3e43;font-size:10px;letter-spacing:.16em}
.blog-card h3{font:600 34px/1.05 "Cormorant Garamond",serif;margin:12px 0}
.blog-card p{color:#999;line-height:1.7}
.blog-card .text-link{display:inline-block;margin-top:12px;color:#fff;text-decoration:none}
@media(max-width:700px){.blog-hero{min-height:390px;padding:130px 6vw 55px}.blog-grid{grid-template-columns:1fr}.blog-hero-copy h1{font-size:48px}}

/* ===== V26 BLOG ARTICLE GALLERY ===== */
.article-page #galerie .wedding-grid{margin-top:36px}
.article-page #galerie .gallery-hint{margin-top:18px}


/* ===== V28 SERVICE TITLE LINKS ===== */
.service-title-link{
  color:inherit;
  text-decoration:none;
  position:relative;
  transition:opacity .25s ease;
}
.service-title-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:1px;
  background:currentColor;
  opacity:.6;
  transition:width .3s ease;
}
.service-title-link:hover{opacity:.78}
.service-title-link:hover::after{width:100%}

/* V29 WHATSAPP CONTACT */
.contact-page{background:#080808}.contact-form-hero{padding:190px 8vw 90px;background:radial-gradient(circle at 70% 40%,#281116,#080808 55%)}.contact-form-hero>div{width:min(1100px,92vw);margin:auto}.contact-form-hero h1{font:600 clamp(62px,8vw,118px)/.86 "Cormorant Garamond",serif;margin:15px 0 25px}.contact-form-hero h1 em{color:#ef3e43}.contact-form-hero p{color:#999;max-width:600px}.wa-contact-wrap{width:min(1200px,90vw);margin:auto;padding:100px 0 130px;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.wa-contact-info h2{font:600 clamp(42px,4vw,64px)/.95 "Cormorant Garamond",serif}.wa-contact-info p{color:#999;line-height:1.8}.wa-direct{margin-top:45px;display:flex;flex-direction:column;gap:8px}.wa-direct span{color:#777}.wa-direct a{color:#fff;font-size:24px;text-decoration:none}.wa-form{display:grid;gap:22px}.wa-form label{display:grid;gap:9px;color:#aaa;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.wa-form input,.wa-form select,.wa-form textarea{width:100%;box-sizing:border-box;border:1px solid #2d2d2d;background:#101010;color:#fff;padding:16px 17px;font:14px Inter,sans-serif;outline:none}.wa-form input:focus,.wa-form select:focus,.wa-form textarea:focus{border-color:#ef3e43}.wa-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wa-submit{border:0;background:#ef3e43;color:#fff;padding:19px 22px;display:flex;justify-content:space-between;align-items:center;font-weight:600;cursor:pointer;font-size:14px}.wa-submit b{font-size:24px}.wa-note{color:#666;font-size:11px}@media(max-width:780px){.wa-contact-wrap{grid-template-columns:1fr}.wa-row{grid-template-columns:1fr}.contact-form-hero{padding-top:150px}}

/* ===== V30 GLOBAL POLISH ===== */
html{scroll-padding-top:90px}
body{overflow-x:hidden}
a,button,input,select,textarea{outline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid #ef3e43;
}
img{max-width:100%}
.site-header{
  -webkit-backdrop-filter:blur(10px);
}
.site-header nav a{
  transition:color .2s ease, opacity .2s ease;
}
.site-header nav a:hover{color:#fff}
footer a{transition:color .2s ease}
footer a:hover{color:#fff}

/* consistent CTA behavior */
.wbtn,.btn,.wa-submit{
  transition:transform .2s ease,opacity .2s ease,background .2s ease;
}
.wbtn:hover,.btn:hover,.wa-submit:hover{transform:translateY(-1px)}
.wbtn:active,.btn:active,.wa-submit:active{transform:translateY(0)}

/* FAQ polish */
details summary{
  list-style:none;
  position:relative;
  padding-right:40px;
}
details summary::-webkit-details-marker{display:none}
details summary::after{
  content:"+";
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  color:#ef3e43;
  font-size:24px;
  font-weight:300;
}
details[open] summary::after{content:"−"}

/* smoother galleries */
figure img{backface-visibility:hidden}
.lightbox-stage img{user-select:none}

/* mobile polish */
@media(max-width:850px){
  .site-header{min-height:72px}
  .site-header nav{overflow-y:auto}
}
@media(max-width:600px){
  h1,h2{word-break:normal}
  .section{padding-left:20px;padding-right:20px}
  .contact-buttons{gap:10px}
}

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