
  :root{
    --blue:#159FDB;
    --blue-deep:#0C7BB0;
    --blue-navy:#0E3A52;
    --pink:#E5127F;
    --pink-deep:#B80E66;
    --ink:#212529;
    --ink-soft:#4A4F54;
    --soft:#F2FAFE;
    --line:#D8EEF9;
    --paper:#FFFFFF;
  }
  *{box-sizing:border-box;}
  body{
    font-family:'Jost',sans-serif;
    color:var(--ink);
    background:var(--paper);
    font-weight:300;
    line-height:1.75;
  }
  h1,h2,h3,.display-serif{
    font-family:'Poppins',sans-serif;
    font-weight:700;
    color:var(--ink);
  }
  a{color:var(--blue-deep); text-decoration:none;}
  a:hover{color:var(--pink);}

  /* Navbar */
  .navbar-wed{
    background:var(--paper);
    border-bottom:1px solid var(--line);
  }
  .navbar-wed .navbar-brand{
    font-family:'Poppins',sans-serif;
    font-size:1.5rem;
    letter-spacing:.01em;
    font-weight:800;
  }
  .navbar-wed .navbar-brand .wed{color:var(--pink);}
  .navbar-wed .navbar-brand .pic{color:var(--blue);}
  .navbar-wed .navbar-brand .studio{
    font-family:'Jost',sans-serif;
    font-size:.75rem;
    font-weight:500;
    letter-spacing:.08em;
    color:var(--ink-soft);
    display:block;
    margin-top:-4px;
  }
  .navbar-wed .nav-link{
    color:var(--ink-soft);
    font-size:.92rem;
    letter-spacing:.02em;
    margin:0 .5rem;
    font-weight:400;
  }
  .navbar-wed .nav-link:hover{color:var(--pink);}
  .btn-gold{
    background:var(--blue);
    color:#fff!important;
    border:1px solid var(--blue);
    padding:.5rem 1.3rem;
    font-size:.85rem;
    font-weight:500;
    letter-spacing:.03em;
    border-radius:30px;
  }
  .btn-gold:hover{background:var(--pink); border-color:var(--pink); color:#fff!important;}

  /* Hero */
  .hero{
    background:linear-gradient(160deg, var(--soft) 0%, #ffffff 60%);
    color:var(--ink);
    padding:5.5rem 0 4rem;
    position:relative;
    overflow:hidden;
    border-bottom:1px solid var(--line);
  }
  .hero::after{
    content:"";
    position:absolute;
    right:-90px; top:-90px;
    width:300px; height:300px;
    border:2px solid rgba(21,159,219,.18);
    border-radius:50%;
  }
  .hero::before{
    content:"";
    position:absolute;
    left:-60px; bottom:-100px;
    width:220px; height:220px;
    border:2px solid rgba(229,18,127,.14);
    border-radius:50%;
  }
  .hero .eyebrow{
    color:var(--blue-deep);
    letter-spacing:.18em;
    font-size:.78rem;
    text-transform:uppercase;
    font-weight:600;
  }
  .hero h1{
    color:var(--ink);
    font-size:clamp(2.1rem,4.5vw,3.2rem);
    line-height:1.2;
  }
  .hero h1 em{color:var(--pink); font-style:normal;}
  .hero p.lead{
    color:var(--ink-soft);
    font-weight:300;
    max-width:620px;
  }
  .breadcrumb-wed a{color:var(--blue-deep);}
  .breadcrumb-wed .active{color:var(--pink);}

  /* Section rhythm */
  section.block{padding:3.2rem 0;}
  .kicker{
    color:var(--blue-deep);
    letter-spacing:.16em;
    font-size:.75rem;
    text-transform:uppercase;
    font-weight:600;
  }
  h2.section-title{
    font-size:clamp(1.6rem,3vw,2.1rem);
    margin-top:.3rem;
    margin-bottom:1.2rem;
  }
  .lead-text{font-size:1.05rem; color:var(--ink-soft);}

  /* Pull quote — signature element */
  .pull-frame{
    border-left:4px solid var(--pink);
    background:var(--soft);
    padding:1.6rem 1.8rem;
    margin:2rem 0;
    position:relative;
    border-radius:0 8px 8px 0;
  }
  .pull-frame::before{
    content:"“";
    font-family:'Poppins',sans-serif;
    font-size:3.2rem;
    font-weight:800;
    color:var(--pink);
    position:absolute;
    top:-.4rem; left:1rem;
    line-height:1;
  }
  .pull-frame p{
    font-family:'Poppins',sans-serif;
    font-weight:500;
    font-style:normal;
    font-size:1.15rem;
    color:var(--blue-navy);
    margin:0 0 .3rem 1.6rem;
  }
  .pull-frame cite{font-style:normal; font-size:.85rem; color:var(--blue-deep); margin-left:1.6rem;}

  /* Style compare cards */
  .style-card{
    border:1px solid var(--line);
    border-radius:10px;
    padding:1.6rem;
    height:100%;
    background:#fff;
    transition:transform .2s ease, box-shadow .2s ease;
  }
  .style-card:hover{transform:translateY(-4px); box-shadow:0 12px 28px rgba(21,159,219,.14);}
  .style-card .tag{
    display:inline-block;
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--pink);
    border:1px solid var(--pink);
    border-radius:20px;
    padding:.15rem .7rem;
    margin-bottom:.8rem;
  }

  /* Pricing table */
  .table-wed thead{background:var(--blue-navy); color:#fff;}
  .table-wed th, .table-wed td{vertical-align:middle; padding:.9rem .8rem;}
  .table-wed{border:1px solid var(--line);}

  /* Checklist */
  .check-list li{
    padding:.55rem 0;
    border-bottom:1px dashed var(--line);
    display:flex;
    gap:.7rem;
  }
  .check-list li:last-child{border-bottom:none;}
  .check-num{
    color:var(--pink);
    font-family:'Poppins',sans-serif;
    font-weight:700;
    font-size:1.05rem;
    min-width:1.8rem;
  }

  /* Image frame */
  .img-frame{
    border:6px solid #fff;
    outline:1px solid var(--line);
    box-shadow:0 18px 40px rgba(14,58,82,.14);
    border-radius:8px;
  }

  /* Accordion (FAQ) */
  .accordion-wed .accordion-button{
    font-family:'Poppins',sans-serif;
    font-size:1.02rem;
    font-weight:600;
    color:var(--ink);
    background:#fff;
  }
  .accordion-wed .accordion-button:not(.collapsed){
    background:var(--soft);
    color:var(--pink);
    box-shadow:none;
  }
  .accordion-wed .accordion-button:focus{box-shadow:none; border-color:var(--line);}
  .accordion-wed .accordion-item{border-color:var(--line);}
  .accordion-wed .accordion-button::after{filter:hue-rotate(150deg);}

  /* CTA band */
  .cta-band{
    background:linear-gradient(120deg, var(--pink) 0%, var(--blue) 100%);
    color:#fff;
    padding:3.5rem 0;
  }
  .cta-band h2{color:#fff;}
  .btn-cream{
    background:#fff;
    color:var(--pink)!important;
    border-radius:30px;
    padding:.65rem 1.6rem;
    font-size:.9rem;
    font-weight:600;
    letter-spacing:.02em;
  }
  .btn-cream:hover{background:var(--soft); color:var(--pink-deep)!important;}

  /* Footer */
  footer.site-footer{
    background:var(--blue-navy);
    color:#bfe0f0;
    padding:3rem 0 1.5rem;
    font-size:.9rem;
  }
  footer.site-footer a{color:#e7f6fd;}
  footer.site-footer a:hover{color:var(--pink);}
  footer .fbrand{
    font-family:'Poppins',sans-serif;
    color:#fff;
    font-weight:700;
    font-size:1.3rem;
  }
  footer .fbrand .wed{color:#ff6fb5;}

  .whatsapp-float{
    position:fixed; right:1.2rem; bottom:1.2rem; z-index:999;
    background:#25D366; color:#fff; border-radius:50px;
    padding:.75rem 1.2rem; font-size:.85rem; box-shadow:0 10px 25px rgba(0,0,0,.25);
  }
  .whatsapp-float:hover{color:#fff; opacity:.92;}

  @media (max-width:576px){
    .hero{padding:3.5rem 0 3rem;}
    section.block{padding:2.2rem 0;}
  }
