
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --black:#000000;
  --gold:#c9a96e;
  --gold-light:#e2c07e;
  --white:#ffffff;
  --muted:rgba(255,255,255,0.5);
  --border:rgba(255,255,255,0.08);
}
html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}
body{background:#000;color:var(--white);font-family:'Outfit',sans-serif;font-weight:300;line-height:1.65;overflow-x:hidden}

/* TOP BAR */
.top-bar{background:#000;border-bottom:1px solid var(--border);padding:9px 28px;text-align:center;position:relative;z-index:1001}
.top-bar-inner{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(201,169,110,0.3);background:rgba(201,169,110,0.06);padding:7px 20px;border-radius:100px}
.top-bar-stars{color:var(--gold);font-size:0.8rem;letter-spacing:2px}
.top-bar-text{font-size:0.72rem;font-weight:500;letter-spacing:0.08em;color:var(--white)}
.top-bar-dot{color:var(--muted);font-size:0.6rem}
.top-bar-link{font-size:0.72rem;color:var(--gold);text-decoration:underline;text-underline-offset:3px}

/* NAV */
nav{position:sticky;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:64px;background:rgba(0,0,0,0.97);border-bottom:1px solid var(--border);backdrop-filter:blur(16px)}
.nav-logo img{height:28px;width:auto;display:block}
.nav-logo{flex-shrink:0;margin-right:auto}
.nav-links{display:none;gap:28px;align-items:center}
.nav-links a{font-size:0.67rem;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.2s}
.nav-links a:hover{color:var(--white)}
.nav-cta{font-size:0.65rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;background:var(--gold);color:#000;padding:10px 20px;text-decoration:none;transition:background 0.2s;white-space:nowrap}
.nav-cta:hover{background:var(--gold-light)}
.hamburger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:4px}
.hamburger span{width:22px;height:1.5px;background:var(--white)}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;z-index:999;background:rgba(0,0,0,0.99);border-bottom:1px solid var(--border);padding:80px 28px 28px;flex-direction:column;gap:20px}
.mobile-menu.open{display:flex}
.mobile-menu a{font-size:0.8rem;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);text-decoration:none}
@media(min-width:768px){.nav-links{display:flex}.hamburger{display:none}}

/* BUTTONS */
.btn{
  display:block;
  text-align:center;
  font-size:0.68rem;
  font-weight:600;
  letter-spacing:0.22em;
  text-transform:uppercase;
  text-decoration:none;
  padding:16px 32px;
  transition:transform 0.25s cubic-bezier(0.22,1,0.36,1),
             box-shadow 0.25s cubic-bezier(0.22,1,0.36,1),
             background 0.25s ease,
             border-color 0.25s ease,
             color 0.25s ease;
  cursor:pointer;
  border:none;
  font-family:'Outfit',sans-serif;
  width:100%;
  position:relative;
  overflow:hidden;
}
.btn::after{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(255,255,255,0);
  transition:background 0.2s ease;
}
.btn:active::after{
  background:rgba(255,255,255,0.08);
}
.btn-gold{
  background:var(--gold);
  color:#000;
}
.btn-gold:hover{
  background:var(--gold-light);
  transform:translateY(-2px);
  box-shadow:0 6px 24px rgba(201,169,110,0.25);
}
.btn-gold:active{
  transform:translateY(0px) scale(0.98);
  box-shadow:0 2px 8px rgba(201,169,110,0.2);
}
.btn-outline{
  background:transparent;
  color:var(--white);
  border:1px solid rgba(255,255,255,0.2);
}
.btn-outline:hover{
  border-color:rgba(201,169,110,0.6);
  color:var(--gold);
  transform:translateY(-2px);
  box-shadow:0 4px 20px rgba(201,169,110,0.1);
}
.btn-outline:active{
  transform:translateY(0px) scale(0.98);
}
.btn-reveal{
  opacity:0;
  transform:translateY(12px);
  transition:opacity 0.6s ease, transform 0.6s cubic-bezier(0.22,1,0.36,1);
}
.btn-reveal.visible{
  opacity:1;
  transform:translateY(0);
}

/* SECTIONS */
.sec{padding:48px 28px;background:#000}
.sec-alt{padding:48px 28px;background:#080808}
.sec-inner{max-width:720px;margin:0 auto}
.sec-label{font-size:0.62rem;font-weight:600;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;text-align:center}
.rule{width:32px;height:1px;background:var(--gold);margin:0 auto 18px;opacity:0.5}
h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,5vw,2.6rem);font-weight:300;letter-spacing:0.03em;line-height:1.2;text-align:center;margin-bottom:10px}
.sec-intro{font-size:0.85rem;color:var(--muted);text-align:center;max-width:440px;margin:0 auto 28px;line-height:1.7}

/* HERO */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 0 80px;overflow:hidden;background:#000}
.hero-logo-block{width:100%;margin-bottom:36px}
.hero-logo-block img{width:100%;display:block;mix-blend-mode:lighten}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,7vw,4.5rem);font-weight:300;line-height:1.08;letter-spacing:0.06em;color:var(--white);max-width:640px;margin-bottom:20px;text-transform:uppercase}
.hero h1 em{font-style:italic;color:var(--gold);text-transform:none;letter-spacing:0.04em}
.hero-sub{font-size:0.88rem;color:var(--muted);max-width:400px;margin:0 auto 40px;line-height:1.75}
.hero-btns{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}

/* SERVICES */
.services-grid{display:grid;grid-template-columns:1fr;gap:0}
.service-card{padding:18px 24px;border-left:2px solid rgba(201,169,110,0.2);border-bottom:1px solid var(--border);background:#000;display:flex;gap:16px;align-items:flex-start;transition:border-left-color 0.25s}
.service-card:hover{border-left-color:var(--gold)}
.service-num{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;color:rgba(201,169,110,0.15);line-height:1;flex-shrink:0;width:36px}
.service-body h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:500;margin-bottom:6px;letter-spacing:0.02em}
.service-body p{font-size:0.8rem;color:var(--muted);line-height:1.6}

/* STEPS */
.steps-grid{display:grid;grid-template-columns:1fr;gap:0}
.step{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--border)}
.step:last-child{border-bottom:none}
.step-num{width:36px;height:36px;flex-shrink:0;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--gold);margin-top:2px}
.step-body h3{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:500;margin-bottom:4px}
.step-body p{font-size:0.78rem;color:var(--muted);line-height:1.55}

/* GALLERY */
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.gallery-cell{aspect-ratio:4/3;background:#0a0a0a;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;cursor:zoom-in}
.gallery-cell img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease}
.gallery-cell:hover img{transform:scale(1.04)}
.gallery-cell.wide{grid-column:span 2;aspect-ratio:16/7}
.gallery-ph{width:100%;height:100%;min-height:180px;background:#0a0a0a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,0.1);font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase}

/* REVIEWS */
.reviews-grid{display:grid;grid-template-columns:1fr;gap:2px}
.review{padding:20px 20px;border-left:2px solid rgba(201,169,110,0.35);background:rgba(201,169,110,0.02)}
.review-stars{color:var(--gold);font-size:0.75rem;letter-spacing:3px;margin-bottom:16px}
.review-text{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:300;font-style:italic;line-height:1.6;color:rgba(255,255,255,0.85);margin-bottom:14px}
.review-name{font-size:0.68rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold)}
.review-loc{font-size:0.68rem;color:var(--muted);margin-top:3px}

/* CONTACT */
.contact-layout{display:grid;grid-template-columns:1fr;gap:56px}
.contact-info{display:flex;flex-direction:column;gap:20px}
.contact-info-item{display:flex;gap:14px;align-items:center}
.ci-icon{color:var(--gold);flex-shrink:0;margin-top:2px}
.ci-label{font-size:0.62rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.ci-value{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:400;color:var(--white)}
.ci-sub{font-size:0.72rem;color:var(--muted);margin-top:2px}
.form{display:flex;flex-direction:column;gap:10px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:0.62rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted)}
.field input,.field textarea{background:#000;border:1px solid var(--border);color:var(--white);padding:12px 14px;font-family:'Outfit',sans-serif;font-size:0.85rem;font-weight:300;outline:none;transition:border-color 0.2s;resize:none;border-radius:0;-webkit-appearance:none}
.field input:focus,.field textarea:focus{border-color:var(--gold)}
.field textarea{min-height:130px}

/* FOOTER */
footer{background:#000;border-top:1px solid var(--border);padding:56px 28px 36px}
.footer-inner{max-width:720px;margin:0 auto}
.footer-top{display:flex;flex-direction:column;gap:32px;margin-bottom:48px}
.footer-logo img{height:36px;width:auto;display:block}
.footer-tagline{font-size:0.75rem;color:var(--muted);margin-top:10px;line-height:1.65}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:0.73rem;color:var(--muted);text-decoration:none;transition:color 0.2s}
.footer-links a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid var(--border);padding-top:24px}
.footer-bottom p{font-size:0.67rem;color:rgba(255,255,255,0.2)}

/* PROJEKT */
.proj-section{padding:48px 28px;background:#080808}
.proj-card{
  position:relative;overflow:hidden;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 32px;
  background:var(--gold);
  transition:background 0.2s, transform 0.25s cubic-bezier(0.22,1,0.36,1), box-shadow 0.25s;
  width:100%;
  max-width:300px;
  margin:0 auto;
  box-shadow:0 0 0 rgba(201,169,110,0);
}
.proj-card:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 6px 24px rgba(201,169,110,0.25)}
.proj-card:active{transform:translateY(0) scale(0.98)}
.proj-card-left h3{font-family:'Outfit',sans-serif;font-size:0.68rem;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:#000}
.proj-card-left p{display:none}
.proj-card-right{color:#000;font-size:1rem;transition:transform 0.3s ease;flex-shrink:0}
.proj-card:hover .proj-card-right{transform:translateX(6px)}

/* PROJEKT MODAL */
.proj-modal{display:none;position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,0.97);overflow-y:auto}
.proj-modal.open{display:block}
.proj-modal-header{
  position:sticky;top:0;z-index:10;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 28px;
  background:rgba(0,0,0,0.95);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(12px);
}
.proj-modal-title{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:300;letter-spacing:0.06em}
.proj-modal-close{background:none;border:none;color:var(--muted);font-size:1.5rem;cursor:pointer;transition:color 0.2s;font-family:'Outfit',sans-serif}
.proj-modal-close:hover{color:var(--gold)}
.proj-modal-body{padding:40px 28px;max-width:800px;margin:0 auto}
.proj-item{margin-bottom:64px}
.proj-item-title{
  font-size:0.62rem;font-weight:600;letter-spacing:0.24em;
  text-transform:uppercase;color:var(--gold);
  margin-bottom:20px;
  display:flex;align-items:center;gap:12px;
}
.proj-item-title::after{content:'';flex:1;height:1px;background:var(--border)}
.proj-imgs{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.proj-img{position:relative;overflow:hidden;cursor:zoom-in}
.proj-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease}
.proj-img:hover img{transform:scale(1.03)}
.proj-img-label{
  position:absolute;bottom:0;left:0;right:0;
  padding:16px;
  background:linear-gradient(to top,rgba(0,0,0,0.7) 0%,transparent 100%);
  font-size:0.6rem;font-weight:600;letter-spacing:0.2em;
  text-transform:uppercase;color:var(--gold);
}
/* LIGHTBOX */
.lb{display:none;position:fixed;inset:0;z-index:4000;background:rgba(0,0,0,0.97);align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:95vw;max-height:92vh;object-fit:contain;display:block}
.lb-close{position:fixed;top:20px;right:24px;background:none;border:none;color:var(--muted);font-size:2rem;cursor:pointer;transition:color 0.2s;z-index:4001}
.lb-close:hover{color:var(--gold)}
@media(max-width:520px){
  .proj-card{padding:28px 24px}
  .proj-card-left h3{font-size:1.4rem}
  .proj-imgs{grid-template-columns:1fr}
}

/* RIPPLE & SHIMMER */
.btn-gold, .proj-card {
  overflow: hidden;
}
.btn-gold::before, .proj-card::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.25) 50%, transparent 100%);
  transform: skewX(-20deg);
  transition: none;
  pointer-events: none;
}
.btn-gold:hover::before, .proj-card:hover::before {
  left: 150%;
  transition: left 0.55s ease;
}
.service-card {
  transition: border-left-color 0.25s, background 0.3s;
}
.service-card:hover {
  background: rgba(201,169,110,0.04);
}
.step:hover .step-num {
  background: var(--gold);
  color: #000;
  transition: background 0.25s, color 0.25s;
}
.step-num {
  transition: background 0.25s, color 0.25s;
}
.review:hover {
  border-left-color: var(--gold);
  background: rgba(201,169,110,0.05);
  transition: all 0.3s;
}

/* REVEAL */
.reveal{opacity:0;transform:translateY(36px);transition:opacity 0.75s cubic-bezier(0.22,1,0.36,1),transform 0.75s cubic-bezier(0.22,1,0.36,1)}
.reveal.visible{opacity:1;transform:translateY(0)}
.hero .reveal{opacity:1;transform:none}
.services-grid .reveal:nth-child(1){transition-delay:0s}
.services-grid .reveal:nth-child(2){transition-delay:0.08s}
.services-grid .reveal:nth-child(3){transition-delay:0.16s}
.services-grid .reveal:nth-child(4){transition-delay:0.24s}
.services-grid .reveal:nth-child(5){transition-delay:0.32s}
.steps-grid .reveal:nth-child(1){transition-delay:0s}
.steps-grid .reveal:nth-child(2){transition-delay:0.1s}
.steps-grid .reveal:nth-child(3){transition-delay:0.2s}
.steps-grid .reveal:nth-child(4){transition-delay:0.3s}
.steps-grid .reveal:nth-child(5){transition-delay:0.4s}
.reviews-grid .reveal:nth-child(1){transition-delay:0s}
.reviews-grid .reveal:nth-child(2){transition-delay:0.1s}
.reviews-grid .reveal:nth-child(3){transition-delay:0.2s}

/* RESPONSIVE */
@media(max-width:520px){
  .form-row{grid-template-columns:1fr}
  .hero{padding:80px 20px 60px}
  .hero h1{font-size:1.9rem}
  .sec,.sec-alt{padding:80px 20px}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-cell.wide{grid-column:span 1;aspect-ratio:4/3}
  .service-card{padding:28px 20px}
}
@media(min-width:640px){
  .contact-layout{grid-template-columns:1fr 1fr}
  .footer-top{flex-direction:row;justify-content:space-between}
}
@media(min-width:768px){
  .steps-grid{grid-template-columns:repeat(5,1fr);gap:0}
  .step{flex-direction:column;gap:16px;padding:28px 16px;border-bottom:none;border-right:1px solid var(--border)}
  .step:last-child{border-right:none}
}

::-webkit-scrollbar{width:3px}
::-webkit-scrollbar-track{background:#000}
::-webkit-scrollbar-thumb{background:rgba(201,169,110,0.3)}

/* FÖRE & EFTER */
.ba-section{padding:48px 28px;background:#080808}
.ba-grid{display:grid;grid-template-columns:1fr;gap:3px;margin-top:0}
.ba-item{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;cursor:col-resize;user-select:none;-webkit-user-select:none}
.ba-before,.ba-after{position:absolute;inset:0;width:100%;height:100%}
.ba-before img,.ba-after img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ba-after{clip-path:inset(0 50% 0 0);transition:clip-path 0s}
.ba-handle{
  position:absolute;top:0;bottom:0;
  left:50%;transform:translateX(-50%);
  width:2px;background:var(--gold);
  cursor:col-resize;z-index:10;
  transition:left 0s;
}
.ba-handle-circle{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:40px;height:40px;
  background:#000;
  border:2px solid var(--gold);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--gold);font-size:0.7rem;
  box-shadow:0 0 12px rgba(201,169,110,0.3);
}
.ba-label{
  position:absolute;bottom:16px;
  font-size:0.6rem;font-weight:600;
  letter-spacing:0.2em;text-transform:uppercase;
  padding:5px 12px;
  background:rgba(0,0,0,0.7);
  border:1px solid rgba(201,169,110,0.3);
  color:var(--gold);
  pointer-events:none;
}
.ba-label-before{left:16px}
.ba-label-after{right:16px}
.ba-placeholder{
  width:100%;height:100%;
  background:#111;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:8px;color:rgba(255,255,255,0.12);
  font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;
}
@media(min-width:640px){
  .ba-grid{grid-template-columns:1fr 1fr}
}

/* ── MOBILE OPTIMIZATIONS ── */
@media(max-width:768px) {

  /* Larger touch targets */
  .btn { padding:18px 28px; font-size:0.72rem; }
  .nav-cta { padding:12px 18px; font-size:0.68rem; }

  /* Hero tighter */
  .hero { padding:72px 20px 56px; }
  .hero h1 { font-size:1.75rem; letter-spacing:0.03em; }
  .hero-sub { font-size:0.85rem; }
  .hero-btns { max-width:100%; }

  /* Nav compact */
  nav { padding:0 20px; }

  /* Sections less padding */
  .sec, .sec-alt, .proj-section, .ba-section { padding:72px 20px; }

  /* Service cards full width, bigger touch area */
  .service-card { padding:28px 20px; gap:18px; }
  .service-num { font-size:2rem; width:36px; }
  .service-body h3 { font-size:1.3rem; }

  /* Steps stack vertically nicely */
  .steps-grid { grid-template-columns:1fr; }
  .step { padding:24px 0; flex-direction:row; gap:20px; border-bottom:1px solid var(--border); border-right:none; }
  .step:last-child { border-bottom:none; }
  .step-num { width:40px; height:40px; flex-shrink:0; font-size:1rem; }

  /* Gallery single column */
  .gallery-grid { grid-template-columns:1fr; }
  .gallery-cell.wide { grid-column:span 1; aspect-ratio:4/3; }

  /* Reviews full width */
  .reviews-grid { grid-template-columns:1fr; }
  .review { padding:28px 20px; }
  .review-text { font-size:1.05rem; }

  /* Contact stack */
  .contact-layout { grid-template-columns:1fr; gap:40px; }

  /* Form full width inputs - bigger for touch */
  .form-row { grid-template-columns:1fr; gap:12px; }
  .field input, .field textarea { padding:16px; font-size:1rem; }
  .field textarea { min-height:110px; }

  /* Footer stack */
  .footer-top { flex-direction:column; gap:28px; }
  .footer-links { flex-direction:row; flex-wrap:wrap; gap:12px 20px; }

  /* Projekt modal full screen */
  .proj-modal-body { padding:28px 20px; }
  .proj-imgs { grid-template-columns:1fr; gap:3px; }

  /* Top bar smaller */
  .top-bar { padding:7px 16px; }
  .top-bar-inner { padding:6px 14px; gap:7px; }
  .top-bar-text, .top-bar-link { font-size:0.65rem; }

  /* h2 smaller on mobile */
  h2 { font-size:1.7rem; }
  .sec-intro { font-size:0.82rem; margin-bottom:44px; }

  /* Proj card full width */
  .proj-card { padding:16px 24px; }

  /* About stats 2 cols */
  .about-stats { grid-template-columns:1fr 1fr; }
}

/* Touch feedback - replaces hover on mobile */
@media(hover:none) {
  .btn-gold:active {
    background: var(--gold-light);
    transform: scale(0.97);
    box-shadow: 0 2px 12px rgba(201,169,110,0.3);
  }
  .btn-outline:active {
    border-color: var(--gold);
    color: var(--gold);
    transform: scale(0.97);
  }
  .proj-card:active {
    background: var(--gold-light);
    transform: scale(0.98);
  }
  .service-card:active {
    border-left-color: var(--gold);
    background: rgba(201,169,110,0.05);
  }
  .nav-cta:active {
    background: var(--gold-light);
    transform: scale(0.96);
  }
  /* Disable shimmer on touch - use solid feedback instead */
  .btn-gold::before, .proj-card::before { display:none; }
}

@media(max-width:768px){
  .sec-label{margin-bottom:6px}
  .rule{margin:0 auto 14px}
  h2{margin-bottom:8px}
}

/* TRUST BAR */
.trust-bar{
  background:#000;
  border-bottom:1px solid rgba(255,255,255,0.05);
  padding:14px 28px;
  text-align:center;
}
.trust-bar-inner{
  display:inline-flex;
  align-items:center;
  gap:24px;
}
.trust-item{
  display:flex;
  align-items:center;
  gap:6px;
}
.trust-stars{
  color:var(--gold);
  font-size:0.58rem;
  letter-spacing:2px;
}
.trust-score{
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;
  font-weight:400;
  color:var(--white);
  line-height:1;
}
.trust-platform{
  font-size:0.58rem;
  font-weight:400;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.3);
}
.trust-sep{
  width:1px;
  height:18px;
  background:rgba(255,255,255,0.08);
}

/* OFFERT PANEL */
.offert-overlay{
  display:none;position:fixed;inset:0;z-index:5000;
  background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);
}
.offert-overlay.open{display:block}
.offert-panel{
  position:fixed;top:0;right:0;bottom:0;z-index:5001;
  width:100%;max-width:420px;
  background:#0a0a0a;
  border-left:1px solid rgba(201,169,110,0.15);
  display:flex;flex-direction:column;
  transform:translateX(100%);
  transition:transform 0.4s cubic-bezier(0.22,1,0.36,1);
  overflow-y:auto;
}
.offert-panel.open{transform:translateX(0)}
.offert-panel-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:24px 28px;
  border-bottom:1px solid rgba(255,255,255,0.05);
  flex-shrink:0;
}
.offert-panel-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.4rem;font-weight:300;
  letter-spacing:0.04em;color:var(--white);
}
.offert-close{
  background:none;border:none;color:rgba(255,255,255,0.4);
  font-size:1.4rem;cursor:pointer;line-height:1;
  transition:color 0.2s;padding:4px;
}
.offert-close:hover{color:var(--gold)}
.offert-body{
  padding:32px 28px;
  display:flex;flex-direction:column;
  gap:16px;
  flex:1;
}
.offert-sub{
  font-size:0.78rem;color:rgba(255,255,255,0.4);
  line-height:1.6;margin-bottom:4px;
}
.offert-field{display:flex;flex-direction:column;gap:6px}
.offert-field label{
  font-size:0.6rem;font-weight:600;
  letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,0.4);
}
.offert-field input,
.offert-field textarea{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  color:var(--white);
  padding:14px 16px;
  font-family:'Outfit',sans-serif;
  font-size:0.9rem;font-weight:300;
  outline:none;
  transition:border-color 0.2s;
  resize:none;border-radius:0;
  -webkit-appearance:none;
}
.offert-field input:focus,
.offert-field textarea:focus{border-color:var(--gold)}
.offert-field textarea{min-height:100px}
.offert-btn{
  margin-top:8px;
  padding:16px;
  background:var(--gold);
  color:#000;
  border:none;
  font-family:'Outfit',sans-serif;
  font-size:0.68rem;font-weight:600;
  letter-spacing:0.22em;text-transform:uppercase;
  cursor:pointer;
  transition:background 0.2s,transform 0.15s;
  width:100%;
}
.offert-btn:hover{background:var(--gold-light);transform:translateY(-1px)}
.offert-note{
  font-size:0.62rem;color:rgba(255,255,255,0.25);
  text-align:center;letter-spacing:0.06em;
  margin-top:4px;
}

/* STICKY MOBILE BUTTON */
.sticky-cta{
  display:none;
  position:fixed;bottom:20px;left:50%;
  transform:translateX(-50%);
  z-index:4000;
  background:var(--gold);
  color:#000;
  border:none;
  font-family:'Outfit',sans-serif;
  font-size:0.68rem;font-weight:600;
  letter-spacing:0.22em;text-transform:uppercase;
  padding:14px 32px;
  cursor:pointer;
  box-shadow:0 4px 24px rgba(201,169,110,0.3);
  transition:background 0.2s,transform 0.15s;
}
.sticky-cta:hover{background:var(--gold-light)}
@media(max-width:768px){
  .sticky-cta{display:block}
  .offert-panel{max-width:100%}
}
