/* ==========================================================
   PARADISE FASHION — css/style.css
   ========================================================== */
:root{
  --ink:#15100F; --cream:#FBF8F4; --alt:#F3EDE5;
  --wine:#2A0E14; --wine-2:#4A1622; --dark:#1C0A0F;
  --gold:#B4884B; --gold-2:#D8B678; --grey:#6D635C; --line:#E3DACE;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Jost","Helvetica Neue",Arial,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
  --navh:74px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--cream);color:var(--ink);font:300 16px/1.75 var(--sans);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.lock{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5{font-family:var(--serif);font-weight:400;line-height:1.15;margin:0}
h1{font-size:clamp(2.5rem,5.6vw,4.6rem)}
h2{font-size:clamp(1.85rem,3.6vw,3rem)}
h3{font-size:1.45rem}
h4{font-size:1.18rem}
h5{font-size:1.28rem;letter-spacing:.2em}
h6{font:400 .66rem/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}
p{margin:0 0 1.1em}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 18px;z-index:200}
.skip:focus{left:12px;top:12px}

.wrap{width:100%;max-width:1260px;margin:0 auto;padding:0 clamp(20px,5vw,48px)}
.sec{padding:clamp(62px,8vw,110px) 0}
.sec--alt{background:var(--alt)}
.tag{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.mid{text-align:center;margin-top:44px}

/* ---------- buttons ---------- */
.btn{display:inline-block;padding:15px 32px;font:400 .72rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;transition:.4s var(--ease);text-align:center}
.btn--gold{background:var(--gold);color:#fff;border-color:var(--gold)}
.btn--gold:hover{background:var(--wine);border-color:var(--wine);color:#fff}
.btn--dark{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn--dark:hover{background:var(--ink);color:var(--cream)}
.btn--line{border-color:rgba(255,255,255,.65);color:#fff}
.btn--line:hover{background:#fff;color:var(--ink)}
.ulink{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:5px;transition:.35s var(--ease)}
.ulink:hover{color:var(--ink);border-color:var(--ink)}
.btn--full{width:100%}

/* ==========================================================
   NAV — solid bar, always readable
   ========================================================== */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;background:var(--wine);color:#fff;
     box-shadow:0 1px 0 rgba(255,255,255,.08);transition:padding .35s var(--ease),background .35s var(--ease)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:var(--navh);padding:10px 0}
.nav.stick{background:rgba(42,14,20,.97);backdrop-filter:blur(10px)}
.nav.stick .nav__in{min-height:62px}

.logo{display:flex;align-items:center;gap:12px;flex:none}
.logo__mark{width:38px;height:38px;flex:none;display:grid;place-items:center;border:1px solid var(--gold-2);color:var(--gold-2);font-family:var(--serif);font-size:.95rem;letter-spacing:.05em}
.logo__txt{font-family:var(--serif);font-size:1.08rem;letter-spacing:.2em;text-transform:uppercase;line-height:1;color:#fff}
.logo__txt em{display:block;font:400 .48rem/1 var(--sans);letter-spacing:.26em;color:var(--gold-2);font-style:normal;margin-top:7px}

.menu{display:flex;align-items:center;gap:clamp(10px,1.5vw,24px)}
.menu a{position:relative;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.88);padding:8px 0;white-space:nowrap;transition:color .3s var(--ease)}
.menu a::after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:1px;background:var(--gold-2);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}
.menu a:hover{color:#fff}
.menu a:hover::after,.menu a.active::after{transform:scaleX(1);transform-origin:left}
.menu a.active{color:var(--gold-2)}
.menu__cta{border:1px solid rgba(255,255,255,.5);padding:11px 20px!important;color:#fff!important}
.menu__cta::after{display:none}
.menu__cta:hover{background:var(--gold);border-color:var(--gold)}

.burger{display:none;width:42px;height:42px;background:none;border:0;cursor:pointer;position:relative;color:#fff}
.burger i{position:absolute;left:9px;width:24px;height:1.5px;background:currentColor;transition:.4s var(--ease)}
.burger i:nth-child(1){top:15px}.burger i:nth-child(2){top:21px}.burger i:nth-child(3){top:27px}
.burger.on i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger.on i:nth-child(2){opacity:0}
.burger.on i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:calc(100svh - var(--navh));display:flex;align-items:center;color:#fff;overflow:hidden;padding:clamp(90px,12vw,140px) 0}
.hero__bg{position:absolute;inset:0}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.07);animation:zoom 2.6s var(--ease) forwards}
@keyframes zoom{to{transform:scale(1)}}
.hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,7,10,.88),rgba(20,7,10,.5) 58%,rgba(20,7,10,.25))}
.hero__in{position:relative;z-index:2;max-width:700px}
.hero .tag{color:var(--gold-2)}
.hero__p{color:rgba(255,255,255,.86);max-width:52ch;margin-top:20px;font-size:1.03rem}
.hero__btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero__scroll{position:absolute;left:50%;bottom:30px;width:1px;height:54px;background:rgba(255,255,255,.3);overflow:hidden}
.hero__scroll::after{content:"";position:absolute;inset:0;background:var(--gold-2);animation:run 2.2s var(--ease) infinite}
@keyframes run{0%{transform:translateY(-100%)}60%,100%{transform:translateY(100%)}}
.up{opacity:0;transform:translateY(26px);animation:up .9s var(--ease) .2s forwards}
.d1{animation-delay:.4s}.d2{animation-delay:.6s}.d3{animation-delay:.8s}
@keyframes up{to{opacity:1;transform:none}}

/* ---------- page head ---------- */
.ph{padding:clamp(54px,6vw,86px) 0;background:var(--alt);border-bottom:1px solid var(--line)}
.ph__p{color:var(--grey);max-width:62ch;margin-top:16px}
.crumb{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--grey);margin-bottom:14px}
.crumb span{margin:0 6px;color:#C9BEB0}
.crumb a:hover{color:var(--gold)}

/* ---------- about ---------- */
.about__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(32px,6vw,78px);align-items:center}
.about__grid--rev .about__img{order:2}
.about__img{position:relative;overflow:hidden}
.about__img::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.35);pointer-events:none}
.about__img img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s var(--ease)}
.about__img:hover img{transform:scale(1.05)}
.about__txt h2{margin-bottom:18px}
.about__txt p{color:var(--grey)}
.pill{margin:28px 0;border-top:1px solid var(--line)}
.pill li{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}
.pill b{font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--gold)}
.pill h4{font-family:var(--sans);font-size:.85rem;letter-spacing:.16em;text-transform:uppercase;font-weight:400}
.pill p{font-size:.9rem;color:var(--grey);margin:6px 0 0}

/* ---------- section head ---------- */
.head{max-width:660px;margin:0 auto clamp(36px,5vw,58px);text-align:center}
.head__p{color:var(--grey);margin-top:14px}

/* ---------- collection cards ---------- */
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,30px)}
.col{background:var(--cream);border:1px solid var(--line);display:flex;flex-direction:column;transition:.5s var(--ease)}
.col:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(21,16,15,.10)}
.col__img{overflow:hidden;display:block}
.col__img img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.1s var(--ease)}
.col:hover .col__img img{transform:scale(1.07)}
.col__body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:11px;flex:1}
.col__body p{color:var(--grey);font-size:.92rem;margin:0}
.col__body .ulink{margin-top:auto;align-self:flex-start}

/* ---------- strip banner ---------- */
.strip{position:relative;padding:clamp(74px,9vw,130px) 0;color:#fff;text-align:center;overflow:hidden}
.strip__bg{position:absolute;inset:0}
.strip__bg img{width:100%;height:100%;object-fit:cover}
.strip__bg::after{content:"";position:absolute;inset:0;background:rgba(20,7,10,.66)}
.strip__in{position:relative;z-index:2;max-width:700px;margin:0 auto}
.strip__in p{color:rgba(255,255,255,.84);margin:18px 0 30px}

/* ---------- features ---------- */
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.feat>div{background:var(--cream);padding:clamp(24px,3vw,38px)}
.sec--alt .feat>div{background:var(--alt)}
.feat b{display:block;font-family:var(--serif);font-size:1.1rem;color:var(--gold);margin-bottom:12px}
.feat h4{font-family:var(--sans);font-size:.9rem;letter-spacing:.1em;font-weight:400;margin-bottom:9px}
.feat p{font-size:.88rem;color:var(--grey);margin:0}

/* ---------- contact ---------- */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,70px)}
.contact__info h2{margin-bottom:16px}
.contact__info>p{color:var(--grey)}
.info{margin-top:28px;border-top:1px solid var(--line)}
.info div{padding:15px 0;border-bottom:1px solid var(--line)}
.info p{margin:0;font-size:.97rem}
.contact__img{margin-top:26px;overflow:hidden}
.contact__img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.contact__form{background:var(--cream);padding:clamp(24px,3.2vw,42px);border:1px solid var(--line);align-self:start}
.sec--alt .contact__form{background:var(--cream)}
.contact__form h3{margin-bottom:18px}
form label{display:block;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--grey);margin:14px 0 7px}
form input,form select,form textarea{width:100%;padding:12px 2px;border:0;border-bottom:1px solid var(--line);background:transparent;font:300 .95rem var(--sans);color:var(--ink);border-radius:0}
form select{appearance:none}
form textarea{resize:vertical}
form input:focus,form select:focus,form textarea:focus{outline:none;border-color:var(--gold)}
.err{display:block;min-height:16px;font-size:.73rem;color:#A83B3B}
form .btn{margin-top:16px}
.ok{display:none;margin:16px 0 0;padding:14px 16px;border:1px solid var(--gold);background:rgba(180,136,75,.12);font-size:.9rem}
.ok.show{display:block;animation:up .5s var(--ease)}

/* ==========================================================
   LEGAL PAGES
   ========================================================== */
.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.35);border-radius:100px;
      padding:8px 18px;font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:#fff;margin-bottom:26px}
.chip svg{width:14px;height:14px;fill:none;stroke:var(--gold-2);stroke-width:1.4}

.lg-hero{position:relative;background:var(--wine);color:#fff;text-align:center;padding:clamp(58px,7vw,96px) 0;overflow:hidden}
.lg-hero::before,.lg-hero::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.035);pointer-events:none}
.lg-hero::before{width:420px;height:420px;left:-140px;bottom:-190px}
.lg-hero::after{width:300px;height:300px;right:-90px;top:-150px}
.lg-hero .wrap{position:relative;z-index:2}
.lg-hero h1{font-size:clamp(2.3rem,5vw,4rem)}
.lg-hero__p{color:rgba(255,255,255,.76);max-width:58ch;margin:20px auto 26px}
.pillbox{display:inline-block;background:var(--cream);color:var(--wine);border-radius:100px;padding:9px 22px;font-size:.72rem;letter-spacing:.1em}

.lg-grid{display:grid;grid-template-columns:265px 1fr;gap:clamp(28px,4vw,64px);align-items:start}
.lg-toc{position:sticky;top:96px;background:var(--alt);border:1px solid var(--line);padding:24px 22px}
.lg-toc h6{margin-bottom:14px}
.lg-toc li a{display:block;padding:9px 0;font-size:.88rem;color:var(--grey);border-bottom:1px solid var(--line);transition:.3s var(--ease)}
.lg-toc li:last-child a{border-bottom:0}
.lg-toc li a:hover,.lg-toc li a.on{color:var(--wine)}

.lg-body{max-width:78ch}
.lg-block{scroll-margin-top:110px}
.lg-block+.lg-block{margin-top:40px;padding-top:34px;border-top:1px solid var(--line)}
.lg-block h2{font-size:clamp(1.35rem,2.3vw,1.85rem);margin-bottom:16px;display:flex;gap:12px;align-items:baseline}
.lg-block h2 span{color:var(--gold);font-size:.85em}
.lg-block p{color:var(--grey)}
.dots{margin:0 0 1.1em;padding-left:0}
.dots li{position:relative;padding-left:22px;margin-bottom:10px;color:var(--grey);font-size:.96rem}
.dots li::before{content:"";position:absolute;left:2px;top:12px;width:6px;height:6px;background:var(--gold);border-radius:50%}
.dots b{color:var(--ink);font-weight:400}
.lg-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0 26px;padding:22px;background:var(--alt);border:1px solid var(--line)}
.lg-contact p{margin:0;color:var(--ink);font-size:.94rem}

/* ==========================================================
   DIGITAL DIVISION
   ========================================================== */
.dd-hero{position:relative;background:linear-gradient(160deg,var(--wine) 0%,var(--dark) 100%);color:#fff;text-align:center;padding:clamp(60px,8vw,110px) 0;overflow:hidden}
.dd-hero::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:rgba(216,182,120,.06);left:-180px;bottom:-260px}
.dd-hero::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.03);right:-120px;top:-180px}
.dd-hero .wrap{position:relative;z-index:2}
.dd-hero h1{font-size:clamp(2.4rem,5.4vw,4.4rem)}
.dd-hero__lead{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.6rem);color:var(--gold-2);margin:18px 0 14px}
.dd-hero__p{color:rgba(255,255,255,.74);max-width:60ch;margin:0 auto}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
.chips span{border:1px solid rgba(255,255,255,.28);border-radius:100px;padding:9px 20px;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.85)}

.dd-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,26px)}
.dd-cards article{background:var(--cream);border:1px solid var(--line);padding:clamp(24px,2.6vw,34px);transition:.45s var(--ease)}
.dd-cards article:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(21,16,15,.08);border-color:var(--gold)}
.dd-ic{width:44px;height:44px;display:grid;place-items:center;background:var(--wine);margin-bottom:18px}
.dd-ic svg{width:20px;height:20px;fill:none;stroke:var(--gold-2);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.dd-cards h3{font-size:1.15rem;margin-bottom:10px}
.dd-cards p{font-size:.9rem;color:var(--grey);margin:0}

.dd-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,66px);align-items:start}
.dd-split p{color:var(--grey)}
.dd-box{background:var(--cream);border:1px solid var(--line);padding:clamp(26px,3vw,40px)}
.dd-box h3{margin-bottom:18px}
.ticks li{position:relative;padding-left:32px;margin-bottom:14px;font-size:.95rem;color:var(--grey)}
.ticks li::before{content:"";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;background:var(--wine)}
.ticks li::after{content:"";position:absolute;left:6px;top:12px;width:6px;height:3px;border-left:1.5px solid var(--gold-2);border-bottom:1.5px solid var(--gold-2);transform:rotate(-45deg)}

/* ---------- 404 ---------- */
.err404{text-align:center;min-height:62vh;display:grid;place-items:center}
.err404__p{color:var(--grey);max-width:52ch;margin:18px auto 30px}
.err404__btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- footer ---------- */
.foot{background:var(--dark);color:#EDE6DD;padding:clamp(52px,7vw,86px) 0 0}
.foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:clamp(26px,4vw,50px);padding-bottom:44px}
.foot h5{color:#fff;margin-bottom:12px}
.foot__tag{font-family:var(--serif);font-style:italic;color:var(--gold-2);margin-bottom:14px}
.foot p{color:rgba(237,230,221,.62);font-size:.91rem}
.foot li{margin-bottom:10px}
.foot li a{font-size:.91rem;color:rgba(237,230,221,.72);transition:.3s}
.foot li a:hover{color:var(--gold-2)}
.foot__meta{margin-top:18px!important;font-size:.88rem!important}
.soc{display:flex;flex-wrap:wrap;gap:13px;margin-top:14px}
.soc a{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(237,230,221,.7);border-bottom:1px solid rgba(237,230,221,.25);padding-bottom:3px}
.soc a:hover{color:var(--gold-2);border-color:var(--gold-2)}
.foot__bot{border-top:1px solid rgba(237,230,221,.15);padding:22px 0 28px;font-size:.77rem;color:rgba(237,230,221,.5)}

/* ---------- back to top ---------- */
.top{position:fixed;right:18px;bottom:18px;z-index:55;width:44px;height:44px;border:1px solid var(--line);background:var(--cream);color:var(--ink);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:.4s var(--ease)}
.top.show{opacity:1;visibility:visible;transform:none}
.top:hover{background:var(--gold);color:#fff;border-color:var(--gold)}

/* ---------- reveal ---------- */
.rev{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rev.in{opacity:1;transform:none}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media(max-width:1200px){
  .menu{gap:14px}
  .menu a{font-size:.67rem;letter-spacing:.12em}
  .logo__txt{font-size:.98rem;letter-spacing:.16em}
}
@media(max-width:1080px){
  .burger{display:block}
  .menu{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--wine);flex-direction:column;justify-content:center;gap:6px;
        transform:translateY(-100%);transition:transform .55s var(--ease);padding:80px 24px 40px;overflow-y:auto}
  .menu.open{transform:translateY(0)}
  .menu a{font-family:var(--serif);font-size:1.6rem;letter-spacing:.03em;text-transform:none;color:#fff;padding:12px 0;
          border-bottom:1px solid rgba(255,255,255,.12);width:100%;max-width:420px;text-align:center}
  .menu a::after{display:none}
  .menu__cta{font-family:var(--sans);font-size:.8rem!important;letter-spacing:.2em;text-transform:uppercase;margin-top:22px;border-color:var(--gold)!important;background:var(--gold)}
  .dd-cards{grid-template-columns:repeat(2,1fr)}
  .lg-grid{grid-template-columns:1fr}
  .lg-toc{position:static}
}
@media(max-width:980px){
  .cols{grid-template-columns:repeat(2,1fr)}
  .about__grid,.contact,.dd-split{grid-template-columns:1fr}
  .about__grid--rev .about__img{order:0}
  .feat{grid-template-columns:repeat(2,1fr)}
  .foot__grid{grid-template-columns:1fr 1fr}
  .lg-contact{grid-template-columns:1fr}
}
@media(max-width:620px){
  body{font-size:15px}
  .cols,.dd-cards,.feat,.foot__grid{grid-template-columns:1fr}
  .hero__btns .btn,.err404__btns .btn{flex:1 1 100%}
  .logo__txt{font-size:.9rem;letter-spacing:.12em}
  .logo__txt em{font-size:.44rem}
  .lg-block h2{flex-direction:column;gap:2px}
}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
  .rev,.up{opacity:1;transform:none}
}
@media print{.nav,.top,.foot,.lg-toc{display:none}}
