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

    :root {
      --bg:#f7f6f2;
      --panel:#ffffff;
      --ink:#171717;
      --muted:#6e6e68;
      --line:rgba(23,23,23,.12);
      --soft:rgba(23,23,23,.04);
      --max:1180px;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      margin:0;
      background:
        linear-gradient(90deg, rgba(23,23,23,.03) 1px, transparent 1px),
        var(--bg);
      background-size: 72px 72px, auto;
      color:var(--ink);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
      -webkit-font-smoothing: antialiased;
      line-height:1.45;
    }
    a { color:inherit; text-decoration:none; }
    img { display:block; max-width:100%; }
    .wrap { width:min(var(--max), calc(100% - 30px)); margin:0 auto; }


    .top-brand {
      
      position:absolute;
      top:18px;
      left:18px;
      z-index:1000;
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      gap:4px;
      width:58px;
      color:var(--muted);
      text-decoration:none;
      -webkit-tap-highlight-color:transparent;
    }
    .top-brand-logo {
      width:50px;
      height:50px;
      object-fit:contain;
      border-radius:50%;
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
      backdrop-filter:blur(14px);
      box-shadow:0 10px 30px rgba(0,0,0,.08);
      padding:7px;
      mix-blend-mode:multiply;
    }
    .top-brand-by {
      display:block;
      font-size:10px;
      line-height:1.05;
      letter-spacing:.02em;
      font-weight:700;
      color:var(--muted);
      white-space:nowrap;
      margin-left:1px;
      background:rgba(255,255,255,.70);
      border-radius:999px;
      padding:2px 6px;
      backdrop-filter:blur(10px);
    }

    .menu-toggle {
      
      position:fixed;
      top:18px;
      right:18px;
      width:50px;
      height:50px;
      border-radius:50%;
      border:1px solid var(--line);
      background:rgba(255,255,255,.82);
      backdrop-filter:blur(14px);
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:5px;
      z-index:1000;
      cursor:pointer;
      box-shadow:0 10px 30px rgba(0,0,0,.08);
    }
    .menu-toggle span {
      width:20px;
      height:2px;
      background:var(--ink);
      border-radius:99px;
      transition:.18s ease;
    }
    .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
    .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
    .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
    .menu-panel {
      position:fixed;
      top:78px;
      right:18px;
      width:min(290px, calc(100vw - 36px));
      padding:10px;
      background:rgba(255,255,255,.92);
      backdrop-filter:blur(16px);
      border:1px solid var(--line);
      border-radius:24px;
      box-shadow:0 24px 60px rgba(0,0,0,.10);
      z-index:999;
      opacity:0;
      pointer-events:none;
      transform:translateY(-8px);
      transition:.18s ease;
    }
    .menu-panel.open { opacity:1; pointer-events:auto; transform:translateY(0); }
    .menu-panel a {
      display:flex; justify-content:space-between; align-items:center;
      min-height:46px; padding:12px 14px; border-radius:14px;
      font-weight:700; letter-spacing:-.01em;
    }
    .menu-panel a::after { content:"↓"; color:var(--muted); font-size:12px; }
    .menu-panel a:hover { background:var(--soft); }
.intro {
      padding:142px 0 62px;
      background:#fffdf8;
      border-bottom:1px solid var(--line);
    }
    .intro-inner { max-width:780px; margin:0 auto; text-align:center; }
    .intro-logo { width:84px; margin:0 auto 18px; mix-blend-mode:multiply; }
    .micro {
      margin:0 0 12px; text-transform:uppercase; letter-spacing:.16em;
      font-size:11px; color:var(--muted); font-weight:700;
    }
    h1 {
      margin:0; font-size:clamp(50px,10vw,108px); line-height:.88;
      letter-spacing:-.08em; font-weight:820;
    }
    .subtitle {
      margin:10px 0 0; font-size:clamp(22px,3vw,34px);
      line-height:1; letter-spacing:-.05em; font-weight:700;
    }
    .intro-copy {
      margin:16px auto 0; max-width:620px; color:var(--muted);
      font-size:clamp(16px,1.9vw,20px);
    }
    .hero-photo { width:100%; height:min(74vh,760px); overflow:hidden; }
    .hero-photo img { width:100%; height:100%; object-fit:cover; object-position:center; }

    section { padding:72px 0; border-bottom:1px solid var(--line); }
    .section-head {
      display:grid; grid-template-columns:280px 1fr; gap:24px;
      align-items:end; margin-bottom:28px;
    }
    .eyebrow {
      margin:0 0 12px; text-transform:uppercase; letter-spacing:.15em;
      font-size:11px; color:var(--muted); font-weight:700;
    }
    h2 {
      margin:0; font-size:clamp(34px,5vw,64px); line-height:.94;
      letter-spacing:-.06em; font-weight:780;
    }
    .section-head p:last-child { margin:0; max-width:620px; color:var(--muted); font-size:17px; }

    .effects-grid {
      display:grid; grid-template-columns:repeat(3, 1fr); gap:14px;
    }
    .effect-card { background:var(--panel); border:1px solid var(--line); overflow:hidden; }
    .effect-card img {
      width:100%; height:360px; object-fit:cover; object-position:center;
      filter:saturate(.92) contrast(1.03);
    }
    .effect-card .caption { padding:16px; border-top:1px solid var(--line); }
    .effect-card strong { display:block; font-size:20px; line-height:1; letter-spacing:-.03em; }
    .effect-card span { display:block; margin-top:6px; color:var(--muted); font-size:14px; }


    .process-section {
      background: linear-gradient(180deg, #f0eee8, #f6f4ef);
    }
    .process-intro {
      display:flex;
      align-items:center;
      gap:16px;
      margin-bottom:18px;
    }
    .process-icon {
      width:66px;
      height:66px;
      border-radius:18px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.82);
      display:grid;
      place-items:center;
      flex:0 0 auto;
      box-shadow:0 10px 24px rgba(0,0,0,.05);
    }
    .process-icon svg {
      width:34px;
      height:34px;
      stroke:var(--ink);
      fill:none;
      stroke-width:1.8;
      stroke-linecap:round;
      stroke-linejoin:round;
    }
    .process-lead {
      margin:10px 0 0;
      max-width:720px;
      color:var(--muted);
      font-size:16px;
    }
    .process-box {
      border:1px solid var(--line);
      background:rgba(255,255,255,.82);
      box-shadow:0 18px 40px rgba(0,0,0,.04);
    }

    .process-box { border:1px solid var(--line); background:rgba(255,255,255,.55); }
    .process-grid { display:grid; grid-template-columns:repeat(3, 1fr); }
    .process-step {
      padding:26px; border-right:1px solid var(--line); min-height:190px;
      display:flex; flex-direction:column; justify-content:space-between;
    }
    .process-step:last-child { border-right:0; }
    .process-step .n {
      font-size:12px; color:var(--muted); letter-spacing:.14em;
      text-transform:uppercase; font-weight:700;
    }
    .process-step h3 { margin:0 0 8px; font-size:24px; line-height:1; letter-spacing:-.04em; }
    .process-step p { margin:0; color:var(--muted); font-size:15px; }

    .about-contact { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .panel {
      border:1px solid var(--line); background:rgba(255,255,255,.62);
      padding:26px; min-height:280px;
    }
    .panel p { margin:14px 0 0; color:var(--muted); font-size:16px; max-width:520px; }
    .panel h3 {
      margin:0; font-size:clamp(28px,4vw,44px);
      line-height:.96; letter-spacing:-.05em; font-weight:760;
    }
    .instagram-pill {
      display:inline-flex; align-items:center; justify-content:center;
      min-height:46px; padding:12px 18px; border-radius:999px; margin-top:22px;
      background:linear-gradient(135deg, rgba(131,58,180,.96), rgba(225,48,108,.96), rgba(252,176,69,.96));
      color:#fff !important; font-weight:800; font-size:14px;
      box-shadow:0 14px 32px rgba(225,48,108,.16);
    }
    .btn {
      display:inline-flex; align-items:center; justify-content:center;
      min-height:50px; padding:14px 20px; border-radius:999px;
      background:var(--ink); color:#fff !important; font-weight:800; margin-top:22px;
    }
    .mail { margin-top:12px; color:var(--muted); font-size:14px; }
    footer { padding:26px 0 34px; color:var(--muted); font-size:13px; text-align:center; }

    @media (max-width:920px) {
      .section-head, .about-contact, .process-grid, .effects-grid { grid-template-columns:1fr; }
      .process-step {
        border-right:0; border-bottom:1px solid var(--line); min-height:auto; gap:18px;
      }
      .process-step:last-child { border-bottom:0; }
      .effect-card img { height:300px; }
    }
    @media (max-width:560px) {

      .top-brand {
        top:14px;
        left:14px;
      }
      .top-brand-logo {
        width:48px;
        height:48px;
      }
      .top-brand-by {
        font-size:9.5px;
        padding:2px 5px;
      }
      .wrap { width:min(var(--max), calc(100% - 20px)); }
.intro { padding-top:118px;
        padding-bottom:42px; }
      .hero-photo { height:min(56vh,460px); }
      section { padding:56px 0; }
      .effect-card img { height:250px; }
      .panel { padding:22px; }
    }
  
    .compact-head {
      margin-bottom:22px;
    }
    .styles-section {
      padding:62px 0;
      background:#f7f6f2;
    }
    .stone-carousel {
      position:relative;
      border:1px solid var(--line);
      background:rgba(255,255,255,.70);
      overflow:hidden;
      min-height:470px;
      box-shadow:0 18px 40px rgba(0,0,0,.035);
    }
    .carousel-stage {
      position:relative;
      min-height:470px;
    }
    .stone-slide {
      position:absolute;
      inset:0;
      opacity:0;
      pointer-events:none;
      transition:opacity .28s ease;
      display:grid;
      grid-template-columns:1.2fr .8fr;
      min-height:470px;
    }
    .stone-slide.active {
      opacity:1;
      pointer-events:auto;
    }
    .stone-slide img {
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      min-height:470px;
      filter:saturate(.94) contrast(1.03);
    }
    .slide-copy {
      padding:28px 32px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      background:#fffdf8;
      border-left:1px solid var(--line);
    }
    .slide-copy span {
      color:var(--muted);
      font-size:12px;
      letter-spacing:.14em;
      text-transform:uppercase;
      font-weight:700;
      margin-bottom:14px;
    }
    .slide-copy h3 {
      margin:0;
      font-size:clamp(32px,4.5vw,54px);
      line-height:.94;
      letter-spacing:-.055em;
      font-weight:780;
    }
    .slide-copy p {
      margin:16px 0 0;
      max-width:390px;
      color:var(--muted);
      font-size:16px;
    }
    .carousel-arrow {
      position:absolute;
      top:50%;
      transform:translateY(-50%);
      z-index:5;
      width:46px;
      height:46px;
      border-radius:50%;
      border:1px solid var(--line);
      background:rgba(255,255,255,.88);
      backdrop-filter:blur(12px);
      cursor:pointer;
      font-size:18px;
      color:var(--ink);
      box-shadow:0 12px 28px rgba(0,0,0,.08);
    }
    .carousel-prev { left:16px; }
    .carousel-next { right:16px; }
    .carousel-dots {
      position:absolute;
      z-index:6;
      bottom:18px;
      left:50%;
      transform:translateX(-50%);
      display:flex;
      gap:8px;
      padding:8px 10px;
      border-radius:999px;
      background:rgba(255,255,255,.78);
      backdrop-filter:blur(12px);
      border:1px solid var(--line);
    }
    .dot {
      width:8px;
      height:8px;
      border-radius:50%;
      border:0;
      padding:0;
      background:rgba(23,23,23,.24);
      cursor:pointer;
    }
    .dot.active {
      background:var(--ink);
      transform:scale(1.18);
    }

    .request-section {
      background:linear-gradient(180deg, #efede7, #f7f6f2);
      padding:66px 0;
    }
    .request-card {
      border:1px solid var(--line);
      background:rgba(255,255,255,.82);
      box-shadow:0 22px 50px rgba(0,0,0,.045);
      display:grid;
      grid-template-columns:.85fr 1.15fr;
      gap:0;
    }
    .request-intro {
      padding:34px;
      border-right:1px solid var(--line);
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      min-height:430px;
    }
    .request-intro h2 {
      margin-top:auto;
    }
    .request-intro p:last-child {
      margin:18px 0 0;
      color:var(--muted);
      font-size:16px;
      max-width:420px;
    }
    .request-form-look {
      display:flex;
      flex-direction:column;
      border-bottom:1px solid var(--line);
    }
    .form-row {
      display:grid;
      grid-template-columns:72px 1fr;
      gap:18px;
      padding:26px 28px;
      border-bottom:1px solid var(--line);
      min-height:132px;
      align-items:start;
    }
    .form-row:last-child {
      border-bottom:0;
    }
    .form-number {
      width:46px;
      height:46px;
      border-radius:50%;
      border:1px solid var(--line);
      display:grid;
      place-items:center;
      font-size:11px;
      font-weight:800;
      letter-spacing:.08em;
      color:var(--muted);
      background:#fffdf8;
    }
    .form-row h3 {
      margin:0 0 8px;
      font-size:24px;
      line-height:1;
      letter-spacing:-.04em;
    }
    .form-row p {
      margin:0;
      color:var(--muted);
      max-width:620px;
      font-size:15px;
    }
    .request-action {
      grid-column:2;
      padding:24px 28px 28px;
    }
    .request-action .btn {
      margin-top:0;
    }
    .request-action p {
      margin:12px 0 0;
      color:var(--muted);
      font-size:14px;
    }

    @media (max-width:920px) {
      .stone-slide {
        grid-template-columns:1fr;
      }
      .slide-copy {
        border-left:0;
        border-top:1px solid var(--line);
        min-height:150px;
        padding:18px 24px 54px;
        justify-content:flex-start;
      }
      .stone-slide img {
        min-height:320px;
        height:320px;
      }
      .stone-carousel,
      .carousel-stage,
      .stone-slide {
        min-height:470px;
      }
      .request-card {
        grid-template-columns:1fr;
      }
      .request-intro {
        min-height:auto;
        border-right:0;
        border-bottom:1px solid var(--line);
      }
      .request-action {
        grid-column:1;
      }
    }
    @media (max-width:560px) {
      .styles-section {
        padding:48px 0;
      }
      .stone-carousel,
      .carousel-stage,
      .stone-slide {
        min-height:450px;
      }
      .stone-slide img {
        min-height:300px;
        height:300px;
      }
      .carousel-arrow {
        top:150px;
        width:42px;
        height:42px;
      }
      .slide-copy {
        padding:16px 20px 52px;
      }
      .form-row {
        grid-template-columns:1fr;
        gap:12px;
        padding:22px;
      }
      .request-intro,
      .request-action {
        padding:24px 22px;
      }
    }

  
    .btn.whatsapp-btn {
      background:#25D366;
      color:#07180d !important;
      box-shadow:0 14px 30px rgba(37,211,102,.22);
    }
    .btn.whatsapp-btn:hover {
      filter:brightness(.97);
    }

  
    .about-section {
      background:#f7f6f2;
    }
    .about-panel {
      border:1px solid var(--line);
      background:rgba(255,255,255,.62);
      padding:30px;
      max-width:760px;
      margin:0 auto;
      text-align:left;
    }
    .about-panel p {
      margin:14px 0 0;
      color:var(--muted);
      font-size:16px;
      max-width:620px;
    }
    .about-panel h3 {
      margin:0;
      font-size:clamp(28px,4vw,44px);
      line-height:.96;
      letter-spacing:-.05em;
      font-weight:760;
    }

  
    /* v8 refinements: carousel arrows + dark request section */
    .stone-carousel .carousel-arrow {
      top:62%;
    }
    .stone-carousel .carousel-next {
      right:auto;
      left:calc(60% - 62px);
    }
    .stone-carousel .carousel-prev {
      left:18px;
    }

    .request-section {
      background:#151515;
      color:#f7f6f2;
    }
    .request-card {
      background:#1d1d1b;
      border-color:rgba(255,255,255,.14);
      box-shadow:0 26px 70px rgba(0,0,0,.22);
    }
    .request-intro {
      border-right-color:rgba(255,255,255,.14);
    }
    .request-intro .eyebrow,
    .request-intro p,
    .request-action p,
    .request-action a:not(.btn),
    .form-row p {
      color:rgba(247,246,242,.68);
    }
    .request-intro h2,
    .form-row h3 {
      color:#f7f6f2;
    }
    .request-form-look,
    .form-row {
      border-color:rgba(255,255,255,.14);
    }
    .form-number {
      border-color:rgba(255,255,255,.16);
      background:rgba(255,255,255,.05);
      color:rgba(247,246,242,.68);
    }
    .btn.whatsapp-btn {
      background:#25D366;
      color:#06150b !important;
      box-shadow:0 16px 36px rgba(37,211,102,.26);
    }

    @media (max-width:920px) {
      .stone-carousel .carousel-arrow {
        top:220px;
      }
      .stone-carousel .carousel-next {
        left:auto;
        right:16px;
      }
      .request-intro {
        border-right:0;
        border-bottom-color:rgba(255,255,255,.14);
      }
    }

    @media (max-width:560px) {
      .stone-carousel .carousel-arrow {
        top:210px;
      }
      .carousel-prev {
        left:18px;
      }
      .carousel-next {
        right:18px;
      }
      .request-section {
        padding-top:54px;
        padding-bottom:54px;
      }
    }

  
    /* v9 refinement: light grey request form, strong black text */
    .request-section {
      background:#e9e7e1 !important;
      color:#0b0b0b !important;
    }
    .request-card {
      background:#f6f5f0 !important;
      border-color:rgba(11,11,11,.14) !important;
      box-shadow:0 22px 55px rgba(0,0,0,.055) !important;
    }
    .request-intro {
      border-right-color:rgba(11,11,11,.14) !important;
    }
    .request-intro .eyebrow {
      color:#111 !important;
    }
    .request-intro h2,
    .form-row h3 {
      color:#0b0b0b !important;
    }
    .request-intro p,
    .request-action p,
    .request-action a:not(.btn),
    .form-row p {
      color:#2f2f2c !important;
    }
    .request-form-look,
    .form-row {
      border-color:rgba(11,11,11,.13) !important;
    }
    .form-number {
      border-color:rgba(11,11,11,.16) !important;
      background:#fffdf8 !important;
      color:#111 !important;
    }
    .btn.whatsapp-btn {
      background:#25D366 !important;
      color:#06150b !important;
      box-shadow:0 16px 36px rgba(37,211,102,.24) !important;
    }

    @media (max-width:920px) {
      .request-intro {
        border-right:0 !important;
        border-bottom-color:rgba(11,11,11,.14) !important;
      }
    }

  
    /* v10 fix: carousel controls not over text */
    @media (min-width:921px) {
      .carousel-dots {
        left:30% !important;
        bottom:22px !important;
        transform:translateX(-50%) !important;
      }
      .stone-carousel .carousel-arrow {
        top:58% !important;
      }
      .stone-carousel .carousel-next {
        right:auto !important;
        left:calc(60% - 62px) !important;
      }
    }

    @media (max-width:920px) {
      .stone-carousel,
      .carousel-stage,
      .stone-slide {
        min-height:560px !important;
      }
      .stone-slide img {
        height:300px !important;
        min-height:300px !important;
      }
      .slide-copy {
        min-height:260px !important;
        padding:58px 24px 28px !important;
        justify-content:flex-start !important;
      }
      .carousel-dots {
        top:318px !important;
        bottom:auto !important;
        left:50% !important;
        transform:translateX(-50%) !important;
      }
      .stone-carousel .carousel-arrow {
        top:190px !important;
      }
      .stone-carousel .carousel-next {
        left:auto !important;
        right:16px !important;
      }
      .stone-carousel .carousel-prev {
        left:16px !important;
      }
    }

    @media (max-width:560px) {
      .stone-carousel,
      .carousel-stage,
      .stone-slide {
        min-height:555px !important;
      }
      .slide-copy {
        padding:58px 20px 28px !important;
      }
      .slide-copy h3 {
        font-size:clamp(34px, 8.8vw, 44px) !important;
      }
      .slide-copy p {
        font-size:16px !important;
      }
      .carousel-dots {
        top:318px !important;
      }
      .stone-carousel .carousel-arrow {
        top:190px !important;
      }
    }

  

/* v12 — refinement faithful to the original v10 */
.intro { padding-bottom:54px; }
.intro-copy { max-width:680px; line-height:1.55; }
.hero-photo { height:min(78vh,820px); }
.hero-photo img { object-position:center center; }

.story-section{
  padding:82px 0;
  background:#fffdf8;
  border-bottom:1px solid var(--line);
}
.story-head{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  column-gap:42px;
  row-gap:12px;
  align-items:start;
}
.story-head .eyebrow{ grid-column:1; margin-top:8px; }
.story-head h2{ grid-column:2; max-width:760px; }
.story-lead{
  grid-column:2;
  max-width:720px;
  margin:8px 0 0;
  color:var(--muted);
  font-size:18px;
  line-height:1.55;
}
.story-flow{
  margin:52px 0 0 262px;
  max-width:760px;
}
.story-copy{
  display:grid;
  grid-template-columns:minmax(180px, .72fr) minmax(0,1.28fr);
  gap:38px;
  padding:28px 0;
}
.story-copy h3{
  margin:0;
  font-size:24px;
  line-height:1.02;
  letter-spacing:-.04em;
}
.story-copy p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.65;
}
.story-line{ height:1px; background:var(--line); }
.story-uses{
  margin:44px 0 0 262px;
  padding-top:24px;
  border-top:1px solid var(--line);
  max-width:760px;
}
.story-uses-title{
  margin:0 0 14px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.15em;
  color:var(--muted);
  font-weight:700;
}
.story-tags{ display:flex; flex-wrap:wrap; gap:8px; }
.story-tags span{
  padding:9px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.65);
  font-size:14px;
  font-weight:650;
}

/* Keep the original carousel, but make it breathe a little more. */
.styles-section { padding-top:76px; padding-bottom:76px; }
.stone-carousel { box-shadow:0 18px 48px rgba(0,0,0,.045); }

/* Softer transition into the quote/request area. */
.request-section { padding-top:78px; padding-bottom:78px; }

@media (max-width:920px){
  .story-head{ grid-template-columns:1fr; gap:10px; }
  .story-head .eyebrow,.story-head h2,.story-lead{ grid-column:1; }
  .story-flow,.story-uses{ margin-left:0; }
  .story-copy{ grid-template-columns:1fr; gap:10px; padding:24px 0; }
}
@media (max-width:560px){
  .story-section{ padding:58px 0; }
  .hero-photo{ height:min(60vh,500px); }
  .story-lead{ font-size:16px; }
  .story-flow{ margin-top:34px; }
}


/* v13 — immersive interactive work section */
.work-section{
  --work-bg:#4a4b3d;
  --work-bg-2:#555646;
  --work-ink:#f2eee5;
  --work-muted:rgba(242,238,229,.70);
  --work-line:rgba(242,238,229,.16);
  background:
    radial-gradient(circle at 80% 10%, rgba(255,255,255,.055), transparent 32%),
    linear-gradient(180deg,var(--work-bg-2),var(--work-bg));
  color:var(--work-ink);
  padding:96px 0 82px;
  overflow:hidden;
}
.work-top{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:42px;
  align-items:start;
  margin-bottom:52px;
}
.work-eyebrow{
  margin:8px 0 0;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:11px;
  font-weight:800;
  color:var(--work-muted);
}
.work-top h2{
  margin:0;
  color:var(--work-ink);
  font-size:clamp(42px,6vw,76px);
  line-height:.92;
  letter-spacing:-.065em;
  max-width:760px;
}
.work-intro{
  max-width:680px;
  margin:20px 0 0;
  font-size:18px;
  line-height:1.6;
  color:var(--work-muted);
}

.work-path{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--work-line);
  border-left:1px solid var(--work-line);
}
.work-step{
  position:relative;
  min-height:310px;
  padding:30px 32px 34px;
  border-right:1px solid var(--work-line);
  border-bottom:1px solid var(--work-line);
  transition:transform .28s ease, background .28s ease, box-shadow .28s ease;
  cursor:default;
  outline:none;
}
.work-step::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,0));
  opacity:0;
  transition:opacity .28s ease;
}
.work-step:hover,
.work-step:focus-visible{
  background:rgba(255,255,255,.055);
  transform:translateY(-4px);
  box-shadow:0 22px 46px rgba(0,0,0,.14);
  z-index:2;
}
.work-step:hover::before,
.work-step:focus-visible::before{opacity:1;}

.work-icon{
  width:64px;
  height:64px;
  border:1px solid var(--work-line);
  border-radius:18px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.045);
  margin-bottom:42px;
  transition:transform .28s ease, background .28s ease;
}
.work-step:hover .work-icon,
.work-step:focus-visible .work-icon{
  transform:rotate(-3deg) scale(1.04);
  background:rgba(255,255,255,.09);
}
.work-icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:var(--work-ink);
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.work-copy{position:relative;z-index:1;}
.work-kicker{
  display:block;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:10px;
  font-weight:800;
  color:var(--work-muted);
  margin-bottom:10px;
}
.work-copy h3{
  margin:0;
  font-size:clamp(24px,3vw,34px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--work-ink);
  max-width:420px;
}
.work-copy p{
  margin:14px 0 0;
  max-width:520px;
  color:var(--work-muted);
  line-height:1.6;
  font-size:15px;
}
.work-arrow{
  position:absolute;
  top:28px;
  right:30px;
  font-size:22px;
  color:rgba(242,238,229,.36);
  transition:transform .28s ease,color .28s ease;
}
.work-step:hover .work-arrow,
.work-step:focus-visible .work-arrow{
  transform:translate(4px,-4px);
  color:var(--work-ink);
}

.work-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:30px;
}
.work-bottom-copy{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.work-bottom-copy span{
  text-transform:uppercase;
  font-size:10px;
  letter-spacing:.14em;
  font-weight:800;
  color:var(--work-muted);
}
.work-bottom-copy strong{
  font-size:18px;
  line-height:1.35;
  font-weight:650;
  letter-spacing:-.02em;
}
.work-cta{
  display:inline-flex;
  align-items:center;
  gap:16px;
  padding:14px 18px;
  border:1px solid var(--work-line);
  border-radius:999px;
  color:var(--work-ink)!important;
  background:rgba(255,255,255,.055);
  font-weight:750;
  transition:background .25s ease, transform .25s ease;
}
.work-cta:hover{
  background:rgba(255,255,255,.12);
  transform:translateY(-2px);
}
.work-cta span{font-size:18px;}

@media (max-width:920px){
  .work-section{padding:76px 0 66px;}
  .work-top{grid-template-columns:1fr;gap:12px;margin-bottom:38px;}
  .work-path{grid-template-columns:1fr;}
  .work-step{min-height:auto;padding:26px 24px 30px;}
  .work-icon{margin-bottom:30px;}
}
@media (max-width:640px){
  .work-section{padding:60px 0 54px;}
  .work-top h2{font-size:clamp(40px,12vw,58px);}
  .work-intro{font-size:16px;}
  .work-bottom{align-items:flex-start;flex-direction:column;}
  .work-bottom-copy strong{font-size:16px;}
}


/* v14 — premium earthy footer */
.site-footer{
  --footer-bg:#7a5f43;
  --footer-bg-2:#6f5942;
  --footer-ink:#fbf6ee;
  --footer-muted:rgba(251,246,238,.72);
  --footer-line:rgba(251,246,238,.18);
  padding:78px 0 26px;
  color:var(--footer-ink);
  background:
    radial-gradient(circle at 85% 0%, rgba(201,176,139,.28), transparent 34%),
    linear-gradient(135deg,var(--footer-bg),var(--footer-bg-2));
  border-top:0;
}
.footer-main{
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:64px;
  align-items:end;
  padding-bottom:56px;
  border-bottom:1px solid var(--footer-line);
}
.footer-kicker{
  margin:0 0 18px;
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--footer-muted);
}
.footer-brand h2{
  margin:0;
  max-width:720px;
  font-size:clamp(44px,6.5vw,82px);
  line-height:.88;
  letter-spacing:-.065em;
  color:var(--footer-ink);
}
.footer-copy{
  margin:22px 0 0;
  max-width:590px;
  font-size:17px;
  line-height:1.6;
  color:var(--footer-muted);
}
.footer-action{
  justify-self:end;
  width:min(100%,360px);
}
.footer-action p{
  margin:0 0 18px;
  color:var(--footer-muted);
  line-height:1.55;
  font-size:15px;
}
.footer-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  width:100%;
  padding:16px 18px;
  border-radius:999px;
  border:1px solid var(--footer-line);
  background:rgba(255,255,255,.085);
  color:var(--footer-ink)!important;
  font-weight:800;
  transition:transform .24s ease, background .24s ease;
}
.footer-cta:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.15);
}
.footer-cta span{font-size:20px;}

.footer-links{
  display:grid;
  grid-template-columns:1fr .7fr 1.2fr;
  gap:34px;
  padding:34px 0;
}
.footer-link-group{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.footer-link-group > span{
  margin-bottom:5px;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--footer-muted);
}
.footer-link-group a,
.footer-link-group p{
  margin:0;
  color:var(--footer-ink)!important;
  font-size:14px;
  line-height:1.5;
}
.footer-link-group a{
  width:max-content;
  max-width:100%;
  border-bottom:1px solid transparent;
}
.footer-link-group a:hover{
  border-bottom-color:var(--footer-line);
}

.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-top:20px;
  border-top:1px solid var(--footer-line);
  color:var(--footer-muted);
  font-size:12px;
}

@media(max-width:920px){
  .site-footer{padding-top:64px;}
  .footer-main{grid-template-columns:1fr;gap:38px;align-items:start;}
  .footer-action{justify-self:start;}
  .footer-links{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .site-footer{padding-top:54px;}
  .footer-main{padding-bottom:42px;}
  .footer-brand h2{font-size:clamp(42px,13vw,58px);}
  .footer-copy{font-size:16px;}
  .footer-links{grid-template-columns:1fr;gap:26px;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
}


/* v15 — mobile version inspired directly by the approved mockup */
.work-photo{
  width:100%;
  height:150px;
  object-fit:cover;
  border-radius:14px;
  display:block;
  margin:0 0 24px;
  border:1px solid rgba(242,238,229,.14);
  filter:saturate(.92) contrast(1.03);
}

@media (max-width:640px){
  .work-section{
    padding:54px 0 44px !important;
    background:
      radial-gradient(circle at 75% 0%, rgba(255,255,255,.05), transparent 28%),
      linear-gradient(180deg,#4f4b3c,#3f3d31) !important;
  }

  .work-top{
    display:block !important;
    text-align:center;
    margin-bottom:34px !important;
  }

  .work-eyebrow{
    margin:0 0 10px !important;
    font-size:10px !important;
    letter-spacing:.17em !important;
  }

  .work-top h2{
    margin:0 auto !important;
    max-width:330px !important;
    font-size:40px !important;
    line-height:.95 !important;
    letter-spacing:-.055em !important;
  }

  .work-intro{
    margin:14px auto 0 !important;
    max-width:340px !important;
    font-size:15px !important;
    line-height:1.55 !important;
  }

  .work-path{
    display:block !important;
    border:0 !important;
  }

  .work-step{
    min-height:0 !important;
    padding:0 0 30px !important;
    margin:0 0 30px !important;
    border:0 !important;
    border-bottom:1px solid rgba(242,238,229,.14) !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
    text-align:center;
  }

  .work-step:last-child{
    margin-bottom:0 !important;
  }

  .work-step::before,
  .work-arrow{
    display:none !important;
  }

  .work-icon{
    width:52px !important;
    height:52px !important;
    margin:0 auto 14px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.04) !important;
  }

  .work-icon svg{
    width:30px !important;
    height:30px !important;
  }

  .work-photo{
    width:min(100%,310px) !important;
    height:170px !important;
    margin:0 auto 18px !important;
    border-radius:13px !important;
    object-fit:cover !important;
    box-shadow:0 14px 32px rgba(0,0,0,.16);
  }

  .work-copy{
    max-width:330px;
    margin:0 auto;
  }

  .work-kicker{
    margin-bottom:8px !important;
    font-size:9px !important;
  }

  .work-copy h3{
    margin:0 auto !important;
    max-width:300px !important;
    font-size:25px !important;
    line-height:1.02 !important;
  }

  .work-copy p{
    margin:11px auto 0 !important;
    max-width:310px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }

  .work-bottom{
    margin-top:28px !important;
    padding-top:24px !important;
    border-top:1px solid rgba(242,238,229,.14);
    display:block !important;
    text-align:center;
  }

  .work-bottom-copy{
    align-items:center;
  }

  .work-bottom-copy strong{
    display:block;
    max-width:320px;
    margin:0 auto;
    font-size:15px !important;
    line-height:1.5 !important;
  }

  .work-cta{
    margin:20px auto 0;
    width:min(100%,300px);
    justify-content:center !important;
  }
}


:root{
  --qr-dark:#383729;
  --qr-dark2:#302f24;
  --qr-cream:#f3eee5;
  --qr-cream2:#ebe3d6;
  --qr-gold:#bea071;
  --qr-gold2:#d0b68e;
  --qr-ink:#2f2d28;
  --qr-light:#f8f3ea;
  --qr-muted:rgba(248,243,234,.72);
  --qr-line:rgba(248,243,234,.16);
}
html{scroll-behavior:smooth}
body{
  background:var(--qr-cream);
  color:var(--qr-ink);
  font-family:Arial,Helvetica,sans-serif;
}
h1,h2,h3,.footer-big h2,.mock-about h2{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
}
.wrap{max-width:1240px}

/* HERO */
.qr-hero{
  min-height:720px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--qr-dark2);
}
.qr-hero-img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  object-position:center;
}
.qr-hero-shade{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,rgba(24,24,18,.82) 0%,rgba(24,24,18,.60) 35%,rgba(24,24,18,.12) 75%),
    linear-gradient(0deg,rgba(24,24,18,.18),rgba(24,24,18,.04));
}
.qr-hero-inner{position:relative;z-index:2;width:100%}
.qr-hero-copy{max-width:620px;color:var(--qr-light);padding:92px 0 70px}
.qr-mini,.mock-eyebrow{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:10px;
  font-weight:800;
}
.qr-mini{color:var(--qr-gold2);margin:0 0 18px}
.qr-hero h1{
  margin:0;
  font-size:clamp(72px,10vw,138px);
  line-height:.82;
  letter-spacing:-.07em;
  color:var(--qr-light);
}
.qr-subtitle{
  margin:30px 0 0;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:15px;
  font-weight:700;
}
.qr-lead{
  max-width:520px;
  color:var(--qr-muted);
  font-size:17px;
  line-height:1.65;
  margin:26px 0 30px;
}
.qr-gold-btn{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:15px 20px;
  min-width:230px;
  border-radius:999px;
  background:var(--qr-gold);
  color:#fff!important;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:11px;
  font-weight:800;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  transition:transform .2s ease, background .2s ease;
}
.qr-gold-btn:hover{transform:translateY(-2px);background:#c7aa7e}

/* MATERIAL / CAROUSEL */
.styles-section{
  background:var(--qr-cream);
  padding:86px 0;
}
.section-head h2{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  font-size:clamp(40px,5vw,64px)!important;
  letter-spacing:-.045em!important;
}
.section-head .eyebrow{color:#78684f!important}
.stone-carousel{
  border-radius:18px!important;
  overflow:hidden!important;
  box-shadow:0 22px 60px rgba(48,45,37,.10)!important;
  border:1px solid rgba(73,62,47,.10)!important;
}

/* WORK */
.mock-work{
  background:
    radial-gradient(circle at 78% 0%,rgba(255,255,255,.045),transparent 30%),
    linear-gradient(180deg,#3e3c2d,var(--qr-dark2));
  color:var(--qr-light);
  padding:88px 0 78px;
}
.mock-work-head{text-align:center;max-width:780px;margin:0 auto 54px}
.mock-eyebrow{color:var(--qr-gold2);margin:0 0 16px}
.mock-eyebrow.dark{color:#74664f}
.mock-work-head h2{
  margin:0;
  font-size:clamp(46px,6vw,76px);
  letter-spacing:-.055em;
  color:var(--qr-light);
}
.mock-work-head h2 em{font-weight:400}
.mock-work-head>p:last-child{
  max-width:650px;
  margin:16px auto 0;
  color:var(--qr-muted);
  line-height:1.6;
}
.mock-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.mock-step{
  text-align:center;
  padding:8px 22px 18px;
  border-right:1px solid var(--qr-line);
}
.mock-step:last-child{border-right:0}
.mock-icon{
  width:66px;height:66px;margin:0 auto 16px;
  border:1px solid rgba(208,182,142,.45);
  border-radius:50%;
  display:grid;place-items:center;
}
.mock-icon svg{
  width:34px;height:34px;fill:none;
  stroke:var(--qr-gold2);stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
.mock-step h3{
  color:var(--qr-light);
  font-size:22px;
  margin:0 0 18px;
  letter-spacing:-.02em;
}
.mock-step-img{
  width:100%;height:180px;object-fit:cover;
  border-radius:12px;display:block;
  margin:0 0 18px;
}
.mock-step p{
  margin:0 auto;
  max-width:240px;
  min-height:94px;
  color:var(--qr-muted);
  font-size:14px;
  line-height:1.55;
}
.mock-round{
  width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(248,243,234,.50);
  color:var(--qr-light)!important;
  display:grid;place-items:center;
  margin:18px auto 0;font-size:20px;
  transition:background .2s ease,transform .2s ease;
}
.mock-round:hover{background:rgba(255,255,255,.09);transform:translateY(-2px)}

/* USES */
.mock-uses{background:#f5f1ea;padding:58px 0 64px}
.mock-uses-head{text-align:center}
.mock-uses-head h2{
  font-size:clamp(38px,5vw,60px);
  margin:7px 0 34px;
  letter-spacing:-.045em;
}
.mock-use-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:20px;
}
.mock-use-grid>div{text-align:center}
.use-icon{
  display:block;
  font-family:Georgia,serif;
  font-size:32px;color:#75674f;
  margin-bottom:10px;
}
.mock-use-grid strong{
  font-size:13px;font-weight:500;color:#433e35;
}

/* QUOTE */
.mock-quote{
  background:var(--qr-cream);
  padding:90px 0;
}
.quote-card{
  background:var(--qr-dark);
  color:var(--qr-light);
  border-radius:22px;
  overflow:hidden;
  padding:58px;
  box-shadow:0 28px 70px rgba(54,49,39,.12);
}
.quote-main{
  display:grid;grid-template-columns:.48fr 1.52fr;gap:28px;
  align-items:start;
  padding-bottom:40px;border-bottom:1px solid var(--qr-line);
}
.quote-main .mock-eyebrow{margin-top:8px}
.quote-main h2{
  margin:0;
  font-size:clamp(44px,6vw,76px);
  line-height:.94;
  letter-spacing:-.055em;
  color:var(--qr-light);
}
.quote-lead{
  grid-column:2;
  max-width:620px;
  color:var(--qr-muted);
  margin:0;
  font-size:17px;line-height:1.6;
}
.quote-choices{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid var(--qr-line);
}
.quote-choice{
  display:flex;gap:18px;padding:32px 28px;
  border-right:1px solid var(--qr-line);
}
.quote-choice:last-child{border-right:0}
.quote-choice>span{
  color:var(--qr-gold2);
  font-family:Georgia,serif;font-size:26px;
}
.quote-choice strong{
  display:block;font-family:Georgia,serif;
  font-weight:400;font-size:24px;margin-bottom:8px;
}
.quote-choice p{margin:0;color:var(--qr-muted);font-size:14px;line-height:1.5}
.quote-action{
  display:flex;justify-content:space-between;align-items:end;gap:28px;padding-top:30px;
}
.quote-action small{display:block;color:var(--qr-muted);margin-bottom:7px}
.quote-action strong{
  font-family:Georgia,serif;font-weight:400;font-size:28px;
}

/* ABOUT */
.about-section{background:#f5f1ea!important;padding:82px 0!important}
.mock-about{max-width:800px}
.mock-about h2{
  font-size:clamp(42px,6vw,72px);
  line-height:.95;letter-spacing:-.055em;margin:12px 0 24px;
}
.mock-about p{
  max-width:700px;line-height:1.7;color:#6f675b;font-size:16px;
}
.plain-link{
  display:inline-block;margin-top:18px;color:#544b3d!important;
  border-bottom:1px solid rgba(84,75,61,.3);padding-bottom:4px;font-weight:700;
}

/* FOOTER */
.mock-footer{
  background:
    radial-gradient(circle at 10% 0%,rgba(190,160,113,.12),transparent 28%),
    var(--qr-dark2);
  color:var(--qr-light);
  padding:68px 0 24px;
}
.mock-footer-grid{
  display:grid;grid-template-columns:1.35fr .7fr .7fr;
  gap:64px;padding-bottom:48px;
}
.footer-big h2{
  margin:8px 0 20px;
  font-size:clamp(48px,6vw,78px);
  line-height:.9;letter-spacing:-.055em;color:var(--qr-light);
}
.footer-big>p:not(.mock-eyebrow){
  max-width:430px;color:var(--qr-muted);line-height:1.6;margin-bottom:24px;
}
.footer-col{display:flex;flex-direction:column;gap:11px;padding-top:12px}
.footer-col>span{
  color:var(--qr-gold2);text-transform:uppercase;
  letter-spacing:.14em;font-size:10px;font-weight:800;margin-bottom:7px;
}
.footer-col a,.footer-col p{color:var(--qr-muted)!important;margin:0;font-size:14px;line-height:1.55}
.footer-bottom-line{
  border-top:1px solid var(--qr-line);
  padding-top:20px;display:flex;justify-content:space-between;gap:20px;
  color:rgba(248,243,234,.46);font-size:11px;
}

/* navigation panel follows same visual language */
.menu-panel{
  background:#343327!important;
  border-color:rgba(255,255,255,.12)!important;
}
.menu-panel a{color:#f4eee5!important}

/* MOBILE */
@media(max-width:900px){
  .qr-hero{min-height:650px}
  .qr-hero-copy{padding:100px 0 58px;max-width:520px}
  .qr-hero h1{font-size:clamp(64px,17vw,100px)}
  .mock-steps{grid-template-columns:repeat(2,1fr)}
  .mock-step{border-bottom:1px solid var(--qr-line)}
  .mock-step:nth-child(2){border-right:0}
  .mock-use-grid{grid-template-columns:repeat(2,1fr);row-gap:28px}
  .mock-use-grid>div:last-child{grid-column:1/-1}
  .quote-main{grid-template-columns:1fr}
  .quote-main .mock-eyebrow,.quote-lead{grid-column:1}
  .quote-choices{grid-template-columns:1fr}
  .quote-choice{border-right:0;border-bottom:1px solid var(--qr-line)}
  .quote-choice:last-child{border-bottom:0}
  .quote-action{align-items:flex-start;flex-direction:column}
  .mock-footer-grid{grid-template-columns:1fr 1fr}
  .footer-big{grid-column:1/-1}
}
@media(max-width:620px){
  .qr-hero{min-height:600px;align-items:flex-end}
  .qr-hero-shade{
    background:
      linear-gradient(0deg,rgba(24,24,18,.90) 0%,rgba(24,24,18,.50) 55%,rgba(24,24,18,.12) 100%);
  }
  .qr-hero-copy{padding:90px 0 48px}
  .qr-hero h1{font-size:17vw}
  .qr-subtitle{font-size:12px;letter-spacing:.18em}
  .qr-lead{font-size:15px}
  .styles-section{padding:58px 0}
  .mock-work{padding:58px 0 46px}
  .mock-work-head{margin-bottom:36px}
  .mock-work-head h2{font-size:42px}
  .mock-steps{display:block}
  .mock-step{
    border-right:0;
    padding:0 0 32px;margin:0 0 32px;
    border-bottom:1px solid var(--qr-line);
  }
  .mock-step:last-child{margin-bottom:0}
  .mock-step-img{
    width:min(100%,320px);height:180px;margin:0 auto 18px;
  }
  .mock-step p{min-height:0}
  .mock-uses{padding:46px 0 50px}
  .mock-use-grid{grid-template-columns:1fr 1fr;gap:24px 10px}
  .mock-use-grid>div:last-child{grid-column:1/-1}
  .quote-card{padding:34px 22px;border-radius:16px}
  .quote-main h2{font-size:44px}
  .quote-choice{padding:24px 0}
  .quote-action .qr-gold-btn{width:100%}
  .about-section{padding:60px 0!important}
  .mock-footer{padding-top:52px}
  .mock-footer-grid{grid-template-columns:1fr;gap:34px}
  .footer-big{grid-column:auto}
  .footer-bottom-line{flex-direction:column;gap:8px}
}


/* v17 refinements */

/* HERO: photo much more visible, text still readable */
.qr-hero{
  min-height:760px !important;
  align-items:flex-end !important;
}
.qr-hero-img{
  object-position:center 36% !important;
}
.qr-hero-shade{
  background:
    linear-gradient(90deg,
      rgba(22,22,17,.70) 0%,
      rgba(22,22,17,.48) 28%,
      rgba(22,22,17,.14) 58%,
      rgba(22,22,17,.02) 78%
    ),
    linear-gradient(0deg,
      rgba(22,22,17,.62) 0%,
      rgba(22,22,17,.15) 36%,
      rgba(22,22,17,.02) 70%
    ) !important;
}
.qr-hero-copy{
  padding:0 0 72px !important;
  max-width:660px !important;
}
.qr-hero h1{
  text-shadow:0 3px 18px rgba(0,0,0,.20);
}
.qr-subtitle,
.qr-lead,
.qr-mini{
  text-shadow:0 2px 12px rgba(0,0,0,.20);
}

/* WORK: more compact, no arrows */
.mock-work{
  padding:74px 0 62px !important;
}
.mock-work-head{
  margin-bottom:42px !important;
}
.mock-step{
  padding-bottom:6px !important;
}
.mock-step p{
  min-height:76px !important;
}
.mock-step-img{
  height:168px !important;
}
.mock-step h3{
  margin-bottom:14px !important;
}
.mock-round{
  display:none !important;
}

/* PREVENTIVO: more lively and understandable */
.mock-quote{
  padding:84px 0 !important;
}
.quote-card{
  background:
    radial-gradient(circle at 85% 20%, rgba(188,160,113,.11), transparent 26%),
    linear-gradient(145deg,#3d3b2e,#343226) !important;
}
.quote-choices{
  gap:0 !important;
}
.quote-choice{
  align-items:flex-start !important;
}
.quote-choice>span{
  min-width:92px !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:11px !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  font-weight:800 !important;
  color:var(--qr-gold2) !important;
  padding-top:5px !important;
}
.quote-choice strong{
  font-size:26px !important;
}
.quote-action{
  padding-top:34px !important;
}
.qr-whatsapp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  min-width:250px;
  padding:16px 20px;
  border-radius:999px;
  background:#2f8f4e;
  color:#fff !important;
  text-transform:uppercase;
  letter-spacing:.10em;
  font-size:11px;
  font-weight:800;
  box-shadow:0 12px 30px rgba(27,96,53,.22);
  transition:transform .2s ease, background .2s ease;
}
.qr-whatsapp-btn:hover{
  background:#287d44;
  transform:translateY(-2px);
}
.qr-whatsapp-btn span{
  font-size:18px;
}

@media(max-width:620px){
  .qr-hero{
    min-height:620px !important;
  }
  .qr-hero-img{
    object-position:62% 30% !important;
  }
  .qr-hero-shade{
    background:
      linear-gradient(0deg,
        rgba(22,22,17,.90) 0%,
        rgba(22,22,17,.56) 36%,
        rgba(22,22,17,.10) 72%,
        rgba(22,22,17,.00) 100%
      ) !important;
  }
  .qr-hero-copy{
    padding:0 0 48px !important;
  }
  .mock-work{
    padding:52px 0 42px !important;
  }
  .mock-work-head{
    margin-bottom:30px !important;
  }
  .mock-step{
    padding-bottom:24px !important;
    margin-bottom:24px !important;
  }
  .mock-step-img{
    height:165px !important;
  }
  .quote-choice>span{
    min-width:84px !important;
  }
  .qr-whatsapp-btn{
    width:100%;
  }
}


/* v18 — hero più fotografica, testo più in basso */
.qr-hero{
  min-height:780px !important;
  align-items:flex-end !important;
}
.qr-hero-img{
  object-position:center 32% !important;
}
.qr-hero-shade{
  background:
    linear-gradient(
      0deg,
      rgba(20,20,15,.78) 0%,
      rgba(20,20,15,.48) 18%,
      rgba(20,20,15,.16) 38%,
      rgba(20,20,15,.03) 58%,
      rgba(20,20,15,0) 78%
    ) !important;
}
.qr-hero-copy{
  padding:0 0 46px !important;
  max-width:660px !important;
}
.qr-hero h1{
  margin-top:0 !important;
}
.qr-subtitle{
  margin-top:22px !important;
}
.qr-lead{
  margin-top:20px !important;
  margin-bottom:26px !important;
}

@media(max-width:620px){
  .qr-hero{
    min-height:690px !important;
  }
  .qr-hero-img{
    object-position:58% 26% !important;
  }
  .qr-hero-shade{
    background:
      linear-gradient(
        0deg,
        rgba(20,20,15,.88) 0%,
        rgba(20,20,15,.60) 18%,
        rgba(20,20,15,.24) 38%,
        rgba(20,20,15,.06) 58%,
        rgba(20,20,15,0) 78%
      ) !important;
  }
  .qr-hero-copy{
    padding:0 0 34px !important;
  }
}


/* v19 — hero ancora più fotografica */
.qr-hero{
  min-height:820px !important;
  align-items:flex-end !important;
}
.qr-hero-img{
  object-position:center 24% !important;
  filter:brightness(1.14) contrast(1.02) saturate(1.03) !important;
}
.qr-hero-shade{
  background:
    linear-gradient(
      0deg,
      rgba(18,18,14,.74) 0%,
      rgba(18,18,14,.42) 14%,
      rgba(18,18,14,.15) 28%,
      rgba(18,18,14,.035) 42%,
      rgba(18,18,14,0) 56%
    ) !important;
}
.qr-hero-copy{
  padding:0 0 18px !important;
  max-width:670px !important;
}
.qr-hero h1{
  margin:0 !important;
}
.qr-subtitle{
  margin-top:16px !important;
}
.qr-lead{
  margin-top:16px !important;
  margin-bottom:20px !important;
}

/* Make the work pictograms look closer to the approved mockup */
.mock-icon{
  width:70px !important;
  height:70px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  margin-bottom:14px !important;
}
.mock-icon svg{
  width:50px !important;
  height:50px !important;
  stroke:var(--qr-gold2) !important;
  stroke-width:1.45 !important;
}
.mock-step h3{
  margin-top:0 !important;
}

@media(max-width:620px){
  .qr-hero{
    min-height:730px !important;
  }
  .qr-hero-img{
    object-position:60% 18% !important;
    filter:brightness(1.18) contrast(1.01) saturate(1.03) !important;
  }
  .qr-hero-shade{
    background:
      linear-gradient(
        0deg,
        rgba(18,18,14,.82) 0%,
        rgba(18,18,14,.52) 12%,
        rgba(18,18,14,.20) 25%,
        rgba(18,18,14,.05) 40%,
        rgba(18,18,14,0) 55%
      ) !important;
  }
  .qr-hero-copy{
    padding:0 0 14px !important;
  }
  .qr-hero h1{
    font-size:16.5vw !important;
    line-height:.86 !important;
  }
  .qr-subtitle{
    margin-top:14px !important;
  }
  .qr-lead{
    font-size:15px !important;
    line-height:1.55 !important;
    margin-top:14px !important;
    margin-bottom:18px !important;
  }
  .mock-icon{
    width:62px !important;
    height:62px !important;
  }
  .mock-icon svg{
    width:44px !important;
    height:44px !important;
  }
}


/* v20 — hero title/subtitle pure white */
.qr-hero h1{
  color:#ffffff !important;
}
.qr-subtitle{
  color:#ffffff !important;
}
.qr-lead{
  color:rgba(255,255,255,.82) !important;
}


/* v21 — warmer, livelier process section */
.mock-work{
  background:
    radial-gradient(circle at 78% 0%, rgba(255,255,255,.045), transparent 30%),
    linear-gradient(180deg,#4a4035,#3f382f) !important;
}
.mock-work-head h2,
.mock-step h3{
  color:#fffaf2 !important;
}
.mock-work-head>p:last-child,
.mock-step p{
  color:rgba(255,248,238,.76) !important;
}
.mock-eyebrow{
  color:#d6b486 !important;
}
.mock-icon{
  width:68px !important;
  height:68px !important;
  border:0 !important;
  background:transparent !important;
  margin-bottom:12px !important;
}
.mock-icon svg{
  width:48px !important;
  height:48px !important;
  fill:none !important;
  stroke:#d9b88b !important;
  stroke-width:1.45 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.mock-step{
  border-right-color:rgba(255,248,238,.12) !important;
}
@media(max-width:620px){
  .mock-work{
    background:
      linear-gradient(180deg,#4b4035,#3e372f) !important;
  }
  .mock-step{
    border-bottom-color:rgba(255,248,238,.12) !important;
  }
}


/* v22 — closer to the approved mockup: warm brown, no olive cast */
.mock-work{
  background:
    radial-gradient(circle at 76% 0%, rgba(255,255,255,.025), transparent 32%),
    linear-gradient(180deg,#40372f,#342e28) !important;
}
.mock-work-head h2,
.mock-step h3{
  color:#fffaf4 !important;
}
.mock-work-head>p:last-child,
.mock-step p{
  color:rgba(255,249,241,.76) !important;
}
.mock-eyebrow{
  color:#d4b486 !important;
}
.mock-icon{
  width:66px !important;
  height:66px !important;
  border:0 !important;
  background:transparent !important;
  margin-bottom:12px !important;
}
.mock-icon svg{
  width:46px !important;
  height:46px !important;
  fill:none !important;
  stroke:#d7b687 !important;
  stroke-width:1.35 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.mock-step{
  border-right-color:rgba(255,249,241,.10) !important;
}
@media(max-width:620px){
  .mock-work{
    background:
      linear-gradient(180deg,#40372f,#342e28) !important;
  }
  .mock-step{
    border-bottom-color:rgba(255,249,241,.10) !important;
  }
}


.mock-icon{
  color:#d7b687 !important;
}
.mock-icon svg{
  width:48px !important;
  height:48px !important;
  display:block !important;
  overflow:visible !important;
  stroke:currentColor !important;
}


/* v24 — actual icon artwork extracted from the approved mockup */
.mock-icon{
  width:72px !important;
  height:72px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 auto 12px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
}
.mock-icon svg{ display:none !important; }
.mockup-icon-img{
  display:block !important;
  width:58px !important;
  height:58px !important;
  object-fit:contain !important;
  opacity:1 !important;
  filter:none !important;
}
@media(max-width:620px){
  .mock-icon{
    width:68px !important;
    height:68px !important;
    margin-bottom:10px !important;
  }
  .mockup-icon-img{
    width:56px !important;
    height:56px !important;
  }
}




:root{
  --font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  --font-body:"Manrope", Arial, Helvetica, sans-serif;
}
body{font-family:var(--font-body)!important;}
h1,h2,h3,.footer-big h2,.mock-about h2,.mock-work h2,.mock-work h3{
  font-family:var(--font-display)!important;
}


/* v25 — process as graphic journey, no pictograms */
.journey-section{
  background:
    radial-gradient(circle at 78% 8%, rgba(205,165,119,.10), transparent 28%),
    linear-gradient(180deg,#45382f,#332b25);
  color:#fffaf3;
  padding:86px 0 78px;
  overflow:hidden;
}
.journey-head{
  text-align:center;
  max-width:780px;
  margin:0 auto 64px;
}
.journey-head h2{
  margin:0;
  color:#fffaf3;
  font-size:clamp(48px,6vw,78px);
  line-height:.94;
  letter-spacing:-.045em;
  font-weight:500;
}
.journey-head h2 em{font-weight:400}
.journey-head>p:last-child{
  margin:16px auto 0;
  max-width:650px;
  color:rgba(255,248,239,.74);
  line-height:1.65;
  font-size:15px;
}
.journey{
  position:relative;
  max-width:1120px;
  margin:0 auto;
  padding:10px 0 36px;
}
.journey-line{
  position:absolute;
  left:6%;
  right:6%;
  top:52%;
  height:1px;
  background:linear-gradient(90deg,
    rgba(214,180,134,.15),
    rgba(214,180,134,.72) 25%,
    rgba(214,180,134,.72) 75%,
    rgba(214,180,134,.15));
}
.journey-step{
  position:relative;
  width:47%;
  margin-bottom:-48px;
  z-index:2;
}
.journey-step:nth-of-type(odd){ margin-left:0; }
.journey-step:nth-of-type(even){ margin-left:53%; }
.step-2{ transform:translateY(-16px); }
.step-3{ transform:translateY(14px); }
.step-4{ transform:translateY(-6px); }

.journey-node{
  position:absolute;
  top:50%;
  width:44px;
  height:44px;
  border-radius:50%;
  background:#c6a16f;
  border:6px solid #3b312a;
  display:grid;
  place-items:center;
  z-index:4;
  box-shadow:0 0 0 1px rgba(214,180,134,.35);
}
.journey-step:nth-of-type(odd) .journey-node{ right:-34px; }
.journey-step:nth-of-type(even) .journey-node{ left:-34px; }
.journey-node span{
  font-size:11px;
  font-weight:700;
  color:#fff;
}
.journey-card{
  display:grid;
  grid-template-columns:46% 54%;
  min-height:220px;
  overflow:hidden;
  border:1px solid rgba(255,248,239,.11);
  border-radius:18px;
  background:rgba(255,255,255,.045);
  box-shadow:0 18px 50px rgba(0,0,0,.13);
  backdrop-filter:blur(2px);
  transition:transform .25s ease, background .25s ease;
}
.journey-step:nth-of-type(even) .journey-card{
  grid-template-columns:54% 46%;
}
.journey-step:nth-of-type(even) .journey-img{order:2}
.journey-step:nth-of-type(even) .journey-copy{order:1}
.journey-card:hover{
  transform:translateY(-4px);
  background:rgba(255,255,255,.065);
}
.journey-img{
  width:100%;
  height:100%;
  min-height:220px;
  object-fit:cover;
  display:block;
}
.journey-copy{
  padding:28px 26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.journey-kicker{
  margin:0 0 8px;
  color:#d8b98e!important;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:9px!important;
  font-weight:700;
}
.journey-copy h3{
  margin:0;
  color:#fffaf3!important;
  font-size:30px!important;
  line-height:.98;
  letter-spacing:-.025em;
  font-weight:500!important;
}
.journey-copy>p:last-child{
  margin:13px 0 0;
  color:rgba(255,248,239,.72)!important;
  font-size:13px;
  line-height:1.6;
}

/* More elegant Instagram CTA */
.instagram-btn{
  display:inline-flex!important;
  align-items:center;
  gap:18px;
  margin-top:24px!important;
  padding:13px 18px!important;
  border-radius:999px;
  background:linear-gradient(135deg,#7d493f,#a66e56);
  color:#fff!important;
  border:0!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  box-shadow:0 12px 28px rgba(109,65,56,.16);
  transition:transform .22s ease, box-shadow .22s ease;
}
.instagram-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 32px rgba(109,65,56,.22);
}
.instagram-btn span{font-size:18px}

/* Improve display typography sitewide */
.qr-hero h1{
  font-family:var(--font-display)!important;
  font-weight:500!important;
  letter-spacing:-.045em!important;
}
.mock-uses-head h2,
.quote-main h2,
.mock-about h2,
.footer-big h2{
  font-family:var(--font-display)!important;
  font-weight:500!important;
}
.mock-about h2{
  line-height:.94!important;
}

/* Mobile progression: vertical, intentionally staggered */
@media(max-width:700px){
  .journey-section{padding:58px 0 52px}
  .journey-head{margin-bottom:40px}
  .journey-head h2{font-size:44px}
  .journey{
    padding-left:22px;
  }
  .journey-line{
    left:22px;
    right:auto;
    top:0;
    bottom:0;
    width:1px;
    height:auto;
    background:linear-gradient(180deg,
      rgba(214,180,134,.15),
      rgba(214,180,134,.70) 18%,
      rgba(214,180,134,.70) 82%,
      rgba(214,180,134,.15));
  }
  .journey-step,
  .journey-step:nth-of-type(even){
    width:calc(100% - 24px);
    margin-left:24px;
    margin-bottom:28px;
    transform:none!important;
  }
  .journey-step:nth-of-type(even){
    margin-left:34px;
    width:calc(100% - 34px);
  }
  .journey-node,
  .journey-step:nth-of-type(odd) .journey-node,
  .journey-step:nth-of-type(even) .journey-node{
    left:-47px;
    right:auto;
    top:26px;
    width:34px;
    height:34px;
    border-width:5px;
  }
  .journey-card,
  .journey-step:nth-of-type(even) .journey-card{
    display:block;
    min-height:0;
    border-radius:16px;
  }
  .journey-step:nth-of-type(even) .journey-img,
  .journey-step:nth-of-type(even) .journey-copy{
    order:initial;
  }
  .journey-img{
    width:100%;
    height:170px;
    min-height:170px;
  }
  .journey-copy{
    padding:20px 20px 22px;
  }
  .journey-copy h3{
    font-size:28px!important;
  }
}


/* v26 final structure */
.visual-gallery{
  position:relative;
  width:100%;
  height:clamp(360px,62vw,720px);
  overflow:hidden;
  background:#201d19;
}
.visual-gallery-track{
  width:100%;height:100%;
  display:flex;overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.visual-gallery-track::-webkit-scrollbar{display:none}
.visual-slide{
  flex:0 0 100%;
  width:100%;height:100%;
  margin:0;scroll-snap-align:start;
}
.visual-slide img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.gallery-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(255,255,255,.45);
  background:rgba(245,239,230,.88);
  color:#312b26;font-size:30px;line-height:1;
  display:grid;place-items:center;z-index:3;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.gallery-prev{left:24px}.gallery-next{right:24px}
.gallery-dots{
  position:absolute;bottom:20px;left:50%;transform:translateX(-50%);
  display:flex;gap:7px;padding:8px 11px;border-radius:999px;
  background:rgba(30,27,24,.36);backdrop-filter:blur(8px);
}
.gallery-dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.45)}
.gallery-dots span.active{background:#fff}

/* Journey alignment + subtle icons */
.journey{max-width:1080px!important}
.journey-step{margin-bottom:34px!important;transform:none!important}
.journey-icon{
  width:44px;height:44px;margin-bottom:12px;
  color:#d6b486;
}
.journey-icon svg{
  width:100%;height:100%;fill:none;stroke:currentColor;
  stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;
}
.journey-card{align-items:stretch}
.journey-copy{position:relative}
.journey-node{top:30px!important}

/* matching social buttons */
.social-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:min(100%,420px)!important;
  min-height:58px!important;
  padding:15px 20px!important;
  border:0!important;
  border-radius:999px!important;
  color:#fff!important;
  text-decoration:none!important;
  font-family:var(--font-body)!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  box-shadow:0 12px 30px rgba(0,0,0,.13)!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.social-action:hover{transform:translateY(-2px)!important;box-shadow:0 16px 34px rgba(0,0,0,.18)!important}
.social-action span{font-size:19px!important}
.social-whatsapp{background:#2f9953!important}
.social-instagram{
  background:linear-gradient(105deg,#6f42c1 0%,#9b3fa7 46%,#d15b72 100%)!important;
  margin-top:24px!important;
}

/* Re-style identity */
.mock-about h2{font-size:clamp(48px,6vw,76px)!important}
.mock-about>p:last-of-type{max-width:760px!important}

/* useful SEO content, visually quiet */
.seo-context{
  padding:54px 0;
  background:#eee7dc;
  border-top:1px solid rgba(60,50,42,.08);
}
.seo-context h2{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-size:clamp(30px,4vw,46px);
  font-weight:500;
  letter-spacing:-.025em;
}
.seo-context p{
  max-width:860px;margin:0;color:#6f675d;line-height:1.7;font-size:14px;
}

/* applications is deliberately second and compact */
.mock-uses{padding-top:52px!important;padding-bottom:54px!important}

@media(max-width:700px){
  .visual-gallery{height:430px}
  .gallery-nav{width:42px;height:42px;font-size:26px}
  .gallery-prev{left:12px}.gallery-next{right:12px}
  .journey{padding-left:28px!important}
  .journey-line{left:18px!important}
  .journey-step,.journey-step:nth-of-type(even){
    width:calc(100% - 18px)!important;
    margin-left:18px!important;
    margin-bottom:24px!important;
  }
  .journey-node,.journey-step:nth-of-type(odd) .journey-node,.journey-step:nth-of-type(even) .journey-node{
    left:-45px!important;top:22px!important;
  }
  .journey-card{border-radius:16px!important}
  .journey-img{height:190px!important}
  .journey-copy{padding:20px!important}
  .journey-icon{width:38px;height:38px;margin-bottom:9px}
  .social-action{width:100%!important}
  .seo-context{padding:42px 0}
}


/* v27 - center mobile journey and lighten quote */
@media(max-width:700px){
  .journey{
    padding-left:0 !important;
  }
  .journey-line{
    display:none !important;
  }
  .journey-step,
  .journey-step:nth-of-type(even){
    width:100% !important;
    margin-left:0 !important;
    margin-bottom:24px !important;
  }
  .journey-node{
    display:none !important;
  }
  .journey-card{
    width:100% !important;
  }
}

/* refined icons */
.journey-icon{
  width:42px !important;
  height:42px !important;
  color:#d8b98e !important;
}
.journey-icon svg{
  width:100% !important;
  height:100% !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.35 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* light preventivo */
.mock-quote{
  background:#f3eee5 !important;
  padding:76px 0 !important;
}
.quote-light-card{
  background:#fbf7f1;
  border:1px solid rgba(74,61,50,.10);
  border-radius:22px;
  padding:54px;
  box-shadow:0 24px 60px rgba(61,49,39,.08);
}
.quote-light-head{
  max-width:800px;
  margin-bottom:34px;
}
.quote-light-head h2{
  margin:8px 0 18px;
  font-family:var(--font-display);
  font-size:clamp(48px,6vw,76px);
  line-height:.94;
  letter-spacing:-.045em;
  font-weight:500;
  color:#342e29;
}
.quote-light-head>p:last-child{
  max-width:680px;
  color:#756c63;
  font-size:16px;
  line-height:1.65;
}
.quote-light-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(74,61,50,.10);
  border-bottom:1px solid rgba(74,61,50,.10);
}
.quote-light-step{
  padding:28px 26px;
  border-right:1px solid rgba(74,61,50,.10);
}
.quote-light-step:last-child{border-right:0}
.quote-light-step span{
  display:block;
  color:#b38d5e;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:10px;
  font-weight:800;
  margin-bottom:10px;
}
.quote-light-step strong{
  display:block;
  font-family:var(--font-display);
  font-size:30px;
  font-weight:500;
  color:#372f29;
  margin-bottom:8px;
}
.quote-light-step p{
  margin:0;
  color:#756c63;
  font-size:14px;
  line-height:1.55;
}
.quote-light-action{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:28px;
  padding-top:30px;
}
.quote-light-action small{
  display:block;
  color:#8a8178;
  margin-bottom:8px;
}
.quote-light-action strong{
  font-family:var(--font-display);
  font-size:28px;
  font-weight:500;
  color:#352f2a;
}

@media(max-width:800px){
  .quote-light-card{padding:34px 22px}
  .quote-light-steps{grid-template-columns:1fr}
  .quote-light-step{
    border-right:0;
    border-bottom:1px solid rgba(74,61,50,.10);
    padding:24px 0;
  }
  .quote-light-step:last-child{border-bottom:0}
  .quote-light-action{
    flex-direction:column;
    align-items:flex-start;
  }
  .quote-light-action .social-action{width:100% !important}
}


/* v28 — unified final identity/contact section */
.unified-contact{
  padding:82px 0;
  background:#f3eee5;
}
.unified-card{
  background:#fbf7f1;
  border:1px solid rgba(70,57,46,.10);
  border-radius:24px;
  padding:58px;
  box-shadow:0 26px 64px rgba(63,49,39,.08);
}
.unified-intro{
  display:grid;
  grid-template-columns:.42fr 1.58fr;
  gap:34px 40px;
  padding-bottom:40px;
  border-bottom:1px solid rgba(70,57,46,.10);
}
.unified-intro .mock-eyebrow{
  grid-column:1;
  margin-top:8px;
}
.unified-intro h2{
  grid-column:2;
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(50px,6vw,78px);
  line-height:.92;
  letter-spacing:-.045em;
  font-weight:500;
  color:#322b26;
}
.unified-lead{
  grid-column:2;
  max-width:760px;
  margin:0;
  color:#746b62;
  font-size:16px;
  line-height:1.7;
}

.unified-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid rgba(70,57,46,.10);
}
.unified-step{
  padding:32px 28px;
  border-right:1px solid rgba(70,57,46,.10);
}
.unified-step:last-child{border-right:0}
.unified-step span{
  display:block;
  margin-bottom:10px;
  color:#b48d5e;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:10px;
  font-weight:800;
}
.unified-step strong{
  display:block;
  margin-bottom:9px;
  font-family:var(--font-display);
  color:#352e28;
  font-size:30px;
  font-weight:500;
}
.unified-step p{
  margin:0;
  color:#766d64;
  font-size:14px;
  line-height:1.6;
}

.unified-actions{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:34px;
  align-items:end;
  padding-top:34px;
}
.unified-actions-copy small{
  display:block;
  margin-bottom:7px;
  color:#8b8279;
}
.unified-actions-copy strong{
  display:block;
  font-family:var(--font-display);
  color:#352f2a;
  font-size:30px;
  font-weight:500;
}
.unified-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.unified-buttons .social-action{
  width:100%!important;
  margin:0!important;
}
.social-whatsapp{
  background:#2f9953!important;
}
.social-instagram{
  background:linear-gradient(105deg,#6f42c1 0%,#9b3fa7 46%,#d15b72 100%)!important;
}

@media(max-width:900px){
  .unified-intro{
    grid-template-columns:1fr;
    gap:14px;
  }
  .unified-intro .mock-eyebrow,
  .unified-intro h2,
  .unified-lead{
    grid-column:1;
  }
  .unified-steps{
    grid-template-columns:1fr;
  }
  .unified-step{
    border-right:0;
    border-bottom:1px solid rgba(70,57,46,.10);
    padding:26px 0;
  }
  .unified-step:last-child{border-bottom:0}
  .unified-actions{
    grid-template-columns:1fr;
    align-items:start;
  }
  .unified-buttons{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .unified-contact{padding:58px 0}
  .unified-card{
    padding:34px 22px;
    border-radius:18px;
  }
  .unified-intro h2{
    font-size:46px;
  }
  .unified-lead{
    font-size:15px;
  }
  .unified-step strong{
    font-size:28px;
  }
  .unified-actions-copy strong{
    font-size:28px;
  }
}


/* v29 cleanup + verified process icons */
.journey-icon{
  width:54px !important;
  height:54px !important;
  margin-bottom:14px !important;
  color:#d8b98e !important;
}
.journey-icon svg{
  width:100% !important;
  height:100% !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.6 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
@media(max-width:700px){
  .journey-icon{
    width:50px !important;
    height:50px !important;
  }
}


/* v30 — art section after gallery */
.art-section{
  background:#f3eee5;
  padding:74px 0 78px;
}
.art-card{
  max-width:860px;
}
.art-card h2{
  margin:10px 0 22px;
  font-family:var(--font-display);
  font-size:clamp(50px,6vw,78px);
  line-height:.92;
  letter-spacing:-.045em;
  font-weight:500;
  color:#332c27;
}
.art-card p{
  max-width:760px;
  margin:0;
  color:#746b62;
  font-size:16px;
  line-height:1.72;
}
.art-card .social-instagram{
  margin-top:26px !important;
  width:min(100%,360px) !important;
}

/* final WhatsApp section */
.contact-final{
  background:#f5f0e8;
  padding:78px 0 84px;
}
.contact-card{
  background:#fbf7f1;
  border:1px solid rgba(70,57,46,.10);
  border-radius:22px;
  padding:54px;
  box-shadow:0 24px 60px rgba(63,49,39,.08);
}
.contact-head{
  max-width:820px;
  margin-bottom:30px;
}
.contact-head h2{
  margin:8px 0 18px;
  font-family:var(--font-display);
  font-size:clamp(48px,6vw,76px);
  line-height:.94;
  letter-spacing:-.045em;
  font-weight:500;
  color:#332c27;
}
.contact-head>p:last-child{
  max-width:680px;
  margin:0;
  color:#756c63;
  font-size:16px;
  line-height:1.65;
}
.contact-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(70,57,46,.10);
  border-bottom:1px solid rgba(70,57,46,.10);
}
.contact-steps article{
  padding:28px 26px;
  border-right:1px solid rgba(70,57,46,.10);
}
.contact-steps article:last-child{border-right:0}
.contact-steps span{
  display:block;
  color:#b48d5e;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:10px;
  font-weight:800;
  margin-bottom:10px;
}
.contact-steps strong{
  display:block;
  font-family:var(--font-display);
  font-size:30px;
  font-weight:500;
  color:#352e28;
  margin-bottom:8px;
}
.contact-steps p{
  margin:0;
  color:#766d64;
  font-size:14px;
  line-height:1.55;
}
.contact-action{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:28px;
  padding-top:30px;
}
.contact-action small{
  display:block;
  color:#8b8279;
  margin-bottom:7px;
}
.contact-action strong{
  font-family:var(--font-display);
  font-size:28px;
  font-weight:500;
  color:#352f2a;
}
.contact-action .social-whatsapp{
  width:min(100%,360px) !important;
}

@media(max-width:800px){
  .contact-steps{grid-template-columns:1fr}
  .contact-steps article{
    border-right:0;
    border-bottom:1px solid rgba(70,57,46,.10);
    padding:24px 0;
  }
  .contact-steps article:last-child{border-bottom:0}
  .contact-action{
    flex-direction:column;
    align-items:flex-start;
  }
  .contact-action .social-whatsapp,
  .art-card .social-instagram{
    width:100% !important;
  }
}
@media(max-width:620px){
  .art-section{padding:58px 0}
  .art-card h2{font-size:46px}
  .contact-final{padding:58px 0 64px}
  .contact-card{padding:34px 22px;border-radius:18px}
}


/* v31 — verified mobile process + compact CTA */
.process-section{
  background:linear-gradient(180deg,#40352d,#322a24);
  color:#fffaf3;
  padding:72px 0 70px;
}
.process-head{
  text-align:center;
  max-width:760px;
  margin:0 auto 38px;
}
.process-head h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(46px,6vw,72px);
  line-height:.95;
  font-weight:500;
  letter-spacing:-.04em;
}
.process-head p:last-child{
  margin:13px auto 0;
  color:rgba(255,248,239,.70);
}
.process-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.process-card{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,248,239,.10);
  border-radius:16px;
  overflow:hidden;
}
.process-top{
  padding:20px 18px 18px;
}
.process-icon{
  width:48px;
  height:48px;
  margin-bottom:13px;
  color:#d7b686;
}
.process-icon svg{
  width:100%;height:100%;
  fill:none;stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;stroke-linejoin:round;
}
.process-top span{
  display:block;
  color:#d6b486;
  font-size:9px;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:800;
  margin-bottom:7px;
}
.process-top h3{
  margin:0;
  font-family:var(--font-display);
  font-size:27px;
  font-weight:500;
  color:#fffaf3;
}
.process-top p{
  margin:8px 0 0;
  color:rgba(255,248,239,.70);
  font-size:13px;
  line-height:1.55;
}
.process-photo{
  width:100%;
  aspect-ratio:1.45/1;
  object-fit:cover;
  display:block;
}

/* compact, click-focused WhatsApp CTA */
.contact-final{
  background:#f3eee5;
  padding:56px 0 66px;
}
.quote-panel{
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:30px;
  align-items:center;
  background:#fbf7f1;
  border:1px solid rgba(70,57,46,.10);
  border-radius:22px;
  padding:34px 38px;
  color:#332c27!important;
  text-decoration:none!important;
  box-shadow:0 20px 48px rgba(63,49,39,.08);
  transition:transform .2s ease, box-shadow .2s ease;
}
.quote-panel:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 56px rgba(63,49,39,.12);
}
.quote-panel h2{
  margin:7px 0 10px;
  font-family:var(--font-display);
  font-size:clamp(38px,4vw,58px);
  line-height:.96;
  font-weight:500;
  letter-spacing:-.035em;
}
.quote-panel-copy>p:last-child{
  margin:0;
  color:#756c63;
  font-size:15px;
  line-height:1.55;
}
.quote-panel-action{
  background:#2f9953;
  color:#fff;
  border-radius:18px;
  padding:22px 24px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:7px 18px;
  align-items:center;
}
.wa-badge{
  grid-column:1/-1;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
  opacity:.82;
}
.quote-panel-action strong{
  font-size:15px;
  line-height:1.35;
}
.quote-panel-action b{
  font-size:24px;
  font-weight:500;
}

@media(max-width:800px){
  .process-grid{
    grid-template-columns:1fr 1fr;
  }
  .quote-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .process-section{
    padding:56px 0 52px;
  }
  .process-head{
    margin-bottom:28px;
  }
  .process-head h2{
    font-size:43px;
  }
  .process-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .process-card{
    display:grid;
    grid-template-columns:1fr;
    border-radius:16px;
  }
  .process-top{
    padding:18px 18px 16px;
  }
  .process-photo{
    aspect-ratio:1.6/1;
  }

  .contact-final{
    padding:46px 0 56px;
  }
  .quote-panel{
    padding:24px 22px;
    border-radius:18px;
    gap:20px;
  }
  .quote-panel h2{
    font-size:38px;
    max-width:330px;
  }
  .quote-panel-copy>p:last-child{
    font-size:14px;
  }
  .quote-panel-action{
    border-radius:16px;
    padding:18px 20px;
  }
}


/* v32 — ONLY refine the final WhatsApp CTA; everything else unchanged */
.quote-panel{
  background:
    linear-gradient(90deg,#fbf7f1 0%,#f8f1e8 72%,#f0e5d6 100%) !important;
  border-radius:20px !important;
  padding:30px 34px !important;
}
.quote-panel h2{
  font-size:clamp(36px,4vw,52px) !important;
  margin-bottom:8px !important;
}
.quote-panel-copy>p:last-child{
  max-width:560px !important;
}
.quote-panel-action{
  border-radius:16px !important;
  padding:18px 20px !important;
}
@media(max-width:620px){
  .quote-panel{
    padding:22px 20px !important;
    gap:16px !important;
  }
  .quote-panel h2{
    font-size:36px !important;
    line-height:.98 !important;
    max-width:300px !important;
  }
  .quote-panel-copy>p:last-child{
    font-size:13.5px !important;
    line-height:1.5 !important;
  }
  .quote-panel-action{
    padding:16px 18px !important;
  }
}


/* v33 — final CTA light + minimal dark footer */
.final-cta-light{
  background:#f3eee5;
  padding:72px 0 76px;
}
.final-cta-light-inner{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:44px;
  align-items:end;
  padding:48px;
  border-radius:22px;
  background:#fbf7f1;
  border:1px solid rgba(70,57,46,.10);
  box-shadow:0 20px 52px rgba(62,49,39,.07);
}
.final-cta-copy h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(50px,6vw,78px);
  line-height:.92;
  letter-spacing:-.045em;
  font-weight:500;
  color:#332c27;
}
.final-cta-copy p{
  max-width:620px;
  margin:18px 0 0;
  color:#746b62;
  font-size:16px;
  line-height:1.65;
}
.final-whatsapp-btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:62px;
  padding:18px 22px;
  border-radius:999px;
  background:#2f9953;
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 12px 28px rgba(47,153,83,.20);
  transition:transform .2s ease, background .2s ease;
}
.final-whatsapp-btn:hover{
  transform:translateY(-2px);
  background:#288848;
}
.final-whatsapp-btn span{
  font-size:20px;
}

.minimal-footer{
  background:#2f2e24;
  color:#f6f1e8;
  padding:42px 0 20px;
}
.minimal-footer-main{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  align-items:start;
  padding-bottom:28px;
  border-bottom:1px solid rgba(246,241,232,.12);
}
.minimal-footer-brand{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.minimal-footer-brand strong{
  font-family:var(--font-display);
  font-size:34px;
  font-weight:500;
  letter-spacing:-.03em;
}
.minimal-footer-brand span{
  color:#d4b486;
  font-size:13px;
  letter-spacing:.08em;
}
.minimal-footer-info{
  display:grid;
  gap:7px;
  justify-items:end;
  text-align:right;
}
.minimal-footer-info p,
.minimal-footer-info a{
  margin:0;
  color:rgba(246,241,232,.72)!important;
  font-size:13px;
  line-height:1.5;
}
.minimal-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:18px;
  color:rgba(246,241,232,.42);
  font-size:11px;
}

@media(max-width:800px){
  .final-cta-light-inner{
    grid-template-columns:1fr;
    gap:28px;
  }
  .minimal-footer-main{
    grid-template-columns:1fr;
    gap:24px;
  }
  .minimal-footer-info{
    justify-items:start;
    text-align:left;
  }
}
@media(max-width:620px){
  .final-cta-light{
    padding:54px 0 58px;
  }
  .final-cta-light-inner{
    padding:32px 22px;
    border-radius:18px;
  }
  .final-cta-copy h2{
    font-size:46px;
  }
  .final-whatsapp-btn{
    width:100%;
    min-height:58px;
    padding:16px 18px;
    font-size:12px;
  }
  .minimal-footer{
    padding-top:34px;
  }
  .minimal-footer-bottom{
    flex-direction:column;
    gap:7px;
  }
}


/* v34 — compact process section, gold icons directly on brown */
.process-section{
  padding:58px 0 54px !important;
}
.process-head{
  margin-bottom:26px !important;
}
.process-head h2{
  font-size:clamp(42px,5.6vw,66px) !important;
}
.process-head p:last-child{
  margin-top:10px !important;
  font-size:14px !important;
}

.process-grid{
  gap:14px !important;
}
.process-card{
  border-radius:14px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.035) !important;
}
.process-top{
  padding:16px 16px 14px !important;
}
.process-icon{
  width:40px !important;
  height:40px !important;
  margin-bottom:8px !important;
  color:#d7b686 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.process-icon svg{
  width:100% !important;
  height:100% !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.65 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.process-top span{
  margin-bottom:5px !important;
  font-size:8.5px !important;
}
.process-top h3{
  font-size:24px !important;
  line-height:1 !important;
}
.process-top p{
  margin-top:6px !important;
  font-size:12.5px !important;
  line-height:1.45 !important;
}
.process-photo{
  aspect-ratio:1.75/1 !important;
  object-fit:cover !important;
}

@media(max-width:620px){
  .process-section{
    padding:46px 0 44px !important;
  }
  .process-head{
    margin-bottom:22px !important;
  }
  .process-head h2{
    font-size:40px !important;
  }
  .process-grid{
    gap:14px !important;
  }
  .process-card{
    display:block !important;
    border-radius:14px !important;
  }
  .process-top{
    padding:14px 16px 12px !important;
  }
  .process-icon{
    width:36px !important;
    height:36px !important;
    margin-bottom:7px !important;
  }
  .process-top span{
    font-size:8px !important;
    letter-spacing:.12em !important;
  }
  .process-top h3{
    font-size:23px !important;
  }
  .process-top p{
    font-size:12px !important;
    line-height:1.4 !important;
    max-width:320px !important;
  }
  .process-photo{
    height:150px !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
  }
}


/* v35 — unified small section labels + refined final quote copy */
.mock-eyebrow,
.qr-mini,
.section-eyebrow{
  font-size:9px !important;
  letter-spacing:.18em !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  margin-bottom:12px !important;
}
.process-head .mock-eyebrow{
  font-size:9px !important;
  letter-spacing:.18em !important;
  margin-bottom:10px !important;
}
.mock-uses-head .mock-eyebrow{
  font-size:9px !important;
  letter-spacing:.18em !important;
  margin-bottom:9px !important;
}
.art-card .mock-eyebrow{
  font-size:9px !important;
  letter-spacing:.18em !important;
  margin-bottom:10px !important;
}
.final-cta-copy p{
  max-width:660px !important;
  font-size:15px !important;
  line-height:1.62 !important;
}
@media(max-width:620px){
  .mock-eyebrow,
  .qr-mini,
  .section-eyebrow,
  .process-head .mock-eyebrow,
  .mock-uses-head .mock-eyebrow,
  .art-card .mock-eyebrow{
    font-size:8.5px !important;
    letter-spacing:.17em !important;
  }
  .final-cta-copy p{
    font-size:14px !important;
    line-height:1.55 !important;
  }
}


:root{
  --whatsapp-green:#25D366;
  --whatsapp-green-hover:#1ebe5d;
}
.final-whatsapp-btn,
.social-whatsapp,
.quote-panel-action{
  background:var(--whatsapp-green) !important;
}
.final-whatsapp-btn:hover,
.social-whatsapp:hover{
  background:var(--whatsapp-green-hover) !important;
}


:root{
  --whatsapp-green:#2f9953;
  --whatsapp-green-hover:#288848;
}
.final-whatsapp-btn,
.social-whatsapp,
.quote-panel-action{
  background:var(--whatsapp-green) !important;
}
.final-whatsapp-btn:hover,
.social-whatsapp:hover{
  background:var(--whatsapp-green-hover) !important;
}

/* Make phase 3/4 icons more legible on mobile */
.process-card:nth-child(3) .process-icon,
.process-card:nth-child(4) .process-icon{
  width:44px !important;
  height:44px !important;
  color:#dfbc86 !important;
}
@media(max-width:620px){
  .process-card:nth-child(3) .process-icon,
  .process-card:nth-child(4) .process-icon{
    width:46px !important;
    height:46px !important;
  }
}


.process-card:nth-child(3) .process-icon,
.process-card:nth-child(4) .process-icon{
  width:50px !important;
  height:50px !important;
}
@media(max-width:620px){
  .process-card:nth-child(3) .process-icon,
  .process-card:nth-child(4) .process-icon{
    width:52px !important;
    height:52px !important;
  }
}


.process-icon{
  width:46px !important;
  height:46px !important;
  color:#d8bb92 !important;
}
.process-icon svg{
  width:100% !important;
  height:100% !important;
  display:block !important;
}
@media(max-width:620px){
  .process-icon{
    width:48px !important;
    height:48px !important;
  }
}


.process-icon{width:48px!important;height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:10px!important;}
.process-icon svg{display:block!important;width:44px!important;height:44px!important;overflow:visible!important;transform-origin:center center!important;}
.process-card:nth-child(1) .process-icon svg{transform:scale(.96)!important;}
.process-card:nth-child(2) .process-icon svg{transform:scale(.93)!important;}
.process-card:nth-child(3) .process-icon svg{transform:scale(.98)!important;}
.process-card:nth-child(4) .process-icon svg{transform:scale(.98)!important;}
@media(max-width:620px){.process-icon{width:48px!important;height:48px!important}.process-icon svg{width:44px!important;height:44px!important}}


.lang-switch{
  display:flex;
  align-items:center;
  gap:6px;
  margin-left:auto;
  font-size:11px;
  letter-spacing:.08em;
  font-weight:700;
  z-index:20;
}
.lang-switch a{
  color:inherit!important;
  text-decoration:none!important;
  opacity:.52;
}
.lang-switch a.active{
  opacity:1;
  text-decoration:underline!important;
  text-underline-offset:4px;
}
.lang-switch span{opacity:.35}
@media(max-width:620px){
  .lang-switch{
    font-size:10px;
    gap:5px;
  }
}


.lang-switch{
  display:flex;
  align-items:center;
  gap:6px;
  margin-left:auto;
  font-size:11px;
  letter-spacing:.08em;
  font-weight:700;
  z-index:20;
}
.lang-switch a{
  color:inherit!important;
  text-decoration:none!important;
  opacity:.52;
}
.lang-switch a.active{
  opacity:1;
  text-decoration:underline!important;
  text-underline-offset:4px;
}
.lang-switch span{opacity:.35}
@media(max-width:620px){
  .lang-switch{font-size:10px;gap:5px}
}


.lang-switch button{
  appearance:none;border:0;background:none;padding:0;
  color:inherit;font:inherit;letter-spacing:inherit;
  opacity:.52;cursor:pointer;
}
.lang-switch button.active{
  opacity:1;text-decoration:underline;text-underline-offset:4px;
}


/* v46 — language switch integrated top-left, no floating bar */
.lang-switch{
  position:absolute !important;
  top:18px !important;
  left:20px !important;
  right:auto !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  z-index:50 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  font-size:10px !important;
  letter-spacing:.14em !important;
  font-weight:700 !important;
}
.lang-switch button,
.lang-switch a{
  color:#f7f1e8 !important;
  opacity:.58 !important;
  text-decoration:none !important;
  background:none !important;
  border:0 !important;
  padding:0 !important;
}
.lang-switch button.active,
.lang-switch a.active{
  opacity:1 !important;
  text-decoration:none !important;
}
.lang-switch span{
  color:#f7f1e8 !important;
  opacity:.28 !important;
}
@media(max-width:620px){
  .lang-switch{
    top:16px !important;
    left:18px !important;
    font-size:9.5px !important;
    gap:5px !important;
  }
}


    .lang-switch{
      top:42px !important;
      left:28px !important;
    }
    @media(max-width:620px){
      .lang-switch{
        top:38px !important;
        left:28px !important;
      }
    }
    

/* v50 — language selector truly below the complete logo/byline block */
.lang-switch{
  position:absolute !important;
  top:91px !important;
  left:19px !important;
  right:auto !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  z-index:1001 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  font-size:9.5px !important;
  line-height:1 !important;
  letter-spacing:.14em !important;
  font-weight:800 !important;
}
.lang-switch a,
.lang-switch button{
  appearance:none !important;
  border:0 !important;
  background:none !important;
  padding:0 0 3px !important;
  margin:0 !important;
  font:inherit !important;
  letter-spacing:inherit !important;
  color:rgba(255,255,255,.68) !important;
  opacity:1 !important;
  text-decoration:none !important;
  border-bottom:1px solid transparent !important;
  cursor:pointer !important;
}
.lang-switch a.active,
.lang-switch button.active{
  color:#d8bb92 !important;
  border-bottom-color:#d8bb92 !important;
}
.lang-switch span{
  color:rgba(255,255,255,.28) !important;
  opacity:1 !important;
  font-weight:400 !important;
}
@media(max-width:560px){
  .lang-switch{
    top:84px !important;
    left:15px !important;
    gap:6px !important;
    font-size:9px !important;
  }
}


.dark-cta-footer{background:radial-gradient(circle at 78% 8%,rgba(214,180,134,.08),transparent 28%),linear-gradient(180deg,#342c26,#26211d);color:#fffaf3;padding:72px 0 24px}
.dark-cta-panel{display:grid;grid-template-columns:1.22fr .78fr;gap:42px;align-items:end;padding-bottom:40px;border-bottom:1px solid rgba(255,248,239,.12)}
.dark-cta-eyebrow{margin:0 0 10px;color:#d8bb92;text-transform:uppercase;letter-spacing:.18em;font-size:9px;font-weight:800}
.dark-cta-copy h2{margin:0;font-family:var(--font-display);font-size:clamp(54px,6.5vw,84px);line-height:.9;letter-spacing:-.045em;font-weight:500;color:#fffaf3}
.dark-cta-text{max-width:720px;margin:20px 0 0;color:rgba(255,248,239,.7);font-size:15px;line-height:1.65}
.dark-whatsapp-btn{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:66px;padding:18px 22px;border-radius:18px;background:#2f9953;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:800;line-height:1.35;box-shadow:0 14px 30px rgba(0,0,0,.18)}
.dark-whatsapp-btn b{font-size:22px;font-weight:500}
.dark-footer-meta{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:28px 0 25px;border-bottom:1px solid rgba(255,248,239,.1)}
.dark-footer-brand{display:flex;flex-direction:column;gap:4px}.dark-footer-brand strong{font-family:var(--font-display);font-size:34px;font-weight:500}.dark-footer-brand span{color:#d8bb92;font-size:12px}
.dark-footer-links{display:grid;justify-items:end;gap:7px;text-align:right}.dark-footer-links span,.dark-footer-links a{color:rgba(255,248,239,.66)!important;text-decoration:none!important;font-size:12.5px}
.dark-footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:18px;color:rgba(255,248,239,.38);font-size:10.5px}
@media(max-width:800px){.dark-cta-panel{grid-template-columns:1fr;gap:28px}.dark-footer-meta{grid-template-columns:1fr;gap:22px}.dark-footer-links{justify-items:start;text-align:left}}
@media(max-width:620px){.dark-cta-footer{padding:56px 0 20px}.dark-cta-copy h2{font-size:48px}.dark-cta-text{font-size:14px;line-height:1.55}.dark-whatsapp-btn{min-height:60px;padding:16px 18px;border-radius:16px;font-size:12px}.dark-footer-bottom{flex-direction:column;gap:6px}}


/* v59 — galleria a quadro con Studio 9 verificato come seconda immagine */
@media(min-width:901px){
  html{background:#e9e4dc}
  body{
    width:100%;
    max-width:1080px;
    margin-inline:auto;
    background:#f5f1ea;
    box-shadow:0 0 70px rgba(42,34,27,.10);
  }
  .wrap{width:calc(100% - 64px)!important;max-width:940px!important}
  .qr-hero{
    width:100%!important;
    max-width:none!important;
    min-height:640px!important;
    margin-inline:auto!important;
  }
  .qr-hero-shade{
    background:
      linear-gradient(90deg,rgba(17,16,13,.68) 0%,rgba(17,16,13,.42) 32%,rgba(17,16,13,.10) 60%,rgba(17,16,13,0) 78%),
      linear-gradient(0deg,rgba(17,16,13,.78) 0%,rgba(17,16,13,.38) 24%,rgba(17,16,13,.05) 52%,rgba(17,16,13,0) 70%)!important;
  }
  .qr-hero h1{font-size:96px!important;line-height:.86!important}
  .qr-hero-copy{max-width:560px!important;padding-bottom:46px!important}
  .visual-gallery{
    width:calc(100% - 160px)!important;
    max-width:800px!important;
    height:590px!important;
    margin:72px auto!important;
    background:#201d19!important;
    box-shadow:0 22px 58px rgba(34,28,23,.16);
  }
  .visual-slide{
    box-sizing:border-box;
    padding:34px!important;
    display:grid;
    place-items:center;
    background:#201d19;
  }
  .visual-slide img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  .gallery-prev{left:14px!important}
  .gallery-next{right:14px!important}
  .gallery-dots{bottom:14px!important}
  .top-brand{left:max(22px,calc((100vw - 1080px)/2 + 22px))!important}
  .lang-switch{left:max(19px,calc((100vw - 1080px)/2 + 19px))!important}
  .menu-toggle{right:max(22px,calc((100vw - 1080px)/2 + 22px))!important}
}
.visual-slide img{object-position:center center}
.visual-slide:nth-child(2) img{object-position:center 48%}
.visual-slide--contain{background:#1f1c18}
.visual-slide--contain img{object-fit:contain}
@media(max-width:700px){
  .visual-slide:nth-child(2) img,.visual-slide:nth-child(3) img{object-position:center center}
}

a:focus-visible,button:focus-visible{outline:3px solid #d8bb92;outline-offset:5px}

/* Gallery: reserve one fixed frame and prevent intrinsic image sizes
   from expanding the grid or creating vertical scrolling. */
.visual-gallery{padding:0!important;border:0!important}
.visual-gallery-track{
  height:100%!important;min-height:0!important;
  overflow-y:hidden!important;overscroll-behavior-x:contain;
}
.visual-slide{
  min-width:0!important;min-height:0!important;overflow:hidden!important;
  grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);
}
.visual-slide img{
  min-width:0!important;min-height:0!important;
  max-height:100%!important;object-fit:contain!important;
  object-position:center center!important;
}

/* QuasiStein: location and service area, preserving the original layout. */
.qr-origin{margin:16px 0 0!important;color:#f3e5d2!important;font-size:12px!important;line-height:1.5!important;letter-spacing:.045em!important;font-weight:600!important}
.dark-service-area{max-width:720px;margin:14px 0 0;color:rgba(255,248,239,.7);font-size:13px;line-height:1.6}
.dark-footer-links a{overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
