/* =========================================================
   CHARMELINE OPEN EDITIONS — RECOVERY
   ========================================================= */

body.ch-open-editions-page{
  overflow-x:hidden;
}

body.ch-open-editions-page .entry-title,
body.ch-open-editions-page .page-title{
  display:none!important;
}

body.ch-open-editions-page .entry-content,
body.ch-open-editions-page .page-content,
body.ch-open-editions-page main{
  max-width:none;
}

/* Full-bleed breakout from Elementor/theme containers */
.ch-open-editions{
  --ch-black:#080808;
  --ch-soft:#111110;
  --ch-paper:#f0ede6;
  --ch-paper-2:#f7f5ef;
  --ch-white:#f7f4ed;
  --ch-grey:#8f8a82;
  --ch-line:rgba(10,10,10,.14);
  --ch-line-light:rgba(255,255,255,.15);
  --ch-serif:"Times New Roman","Baskerville",Georgia,serif;
  --ch-sans:"Helvetica Neue",Arial,Helvetica,sans-serif;
  --ch-max:1440px;
  --ch-pad:clamp(24px,4.6vw,78px);

  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:var(--ch-paper);
  color:var(--ch-black);
  font-family:var(--ch-sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.ch-open-editions *,
.ch-open-editions *::before,
.ch-open-editions *::after{
  box-sizing:border-box;
}

.ch-open-editions img{
  display:block;
  width:100%;
  max-width:100%;
}

.ch-open-editions a{
  color:inherit;
  text-decoration:none;
}

.ch-oe-inner{
  width:min(100%,var(--ch-max));
  margin:0 auto;
}

.ch-oe-eyebrow{
  margin:0;
  font-size:9px;
  line-height:1.4;
  font-weight:500;
  letter-spacing:.19em;
  text-transform:uppercase;
}

.ch-oe-body{
  font-size:clamp(16px,1.2vw,19px);
  line-height:1.72;
  font-weight:300;
}


/* HERO */
.ch-oe-hero{
  position:relative;
  min-height:min(92svh,980px);
  padding:clamp(95px,12vw,185px) var(--ch-pad) clamp(90px,10vw,150px);
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#0b0b0a;
  color:var(--ch-white);
}

.ch-oe-hero-media{
  position:absolute;
  inset:0;
  z-index:0;
}

.ch-oe-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.01);
}

.ch-oe-hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.72) 0%,
      rgba(0,0,0,.50) 42%,
      rgba(0,0,0,.20) 72%,
      rgba(0,0,0,.08) 100%
    ),
    linear-gradient(
      0deg,
      rgba(0,0,0,.52) 0%,
      rgba(0,0,0,.10) 52%,
      rgba(0,0,0,.18) 100%
    );
}

.ch-oe-hero .ch-oe-inner{
  position:relative;
  z-index:2;
}

.ch-oe-hero-grid{
  display:grid;
  grid-template-columns:.52fr 2.48fr;
  gap:clamp(50px,8vw,130px);
  align-items:start;
}

.ch-oe-kicker{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding-top:11px;
  color:rgba(255,255,255,.66);
  font-size:9px;
  line-height:1.4;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.ch-oe-hero-copy h1{
  max-width:1120px;
  margin:0;
  color:var(--ch-white)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(60px,8.5vw,132px)!important;
  font-weight:400!important;
  line-height:.91!important;
  letter-spacing:-.05em!important;
}

.ch-oe-hero-copy h1 em{
  display:block;
  color:rgba(255,255,255,.58);
  font-weight:400;
}

.ch-oe-hero-copy .ch-oe-eyebrow{
  margin-bottom:28px;
}

.ch-oe-intro{
  max-width:650px;
  margin:clamp(42px,5vw,70px) 0 0;
  color:rgba(255,255,255,.78);
  font-size:clamp(16px,1.3vw,20px);
  line-height:1.72;
  font-weight:300;
}

.ch-oe-text-link{
  display:inline-flex;
  align-items:center;
  gap:24px;
  margin-top:38px;
  padding-bottom:9px;
  border-bottom:1px solid rgba(255,255,255,.55);
  color:rgba(255,255,255,.88);
  font-size:9px;
  line-height:1;
  letter-spacing:.16em;
  text-transform:uppercase;
}


/* STATEMENT */
.ch-oe-statement{
  padding:clamp(115px,13vw,205px) var(--ch-pad);
  background:var(--ch-black);
  color:var(--ch-white);
}

.ch-oe-statement-grid{
  display:grid;
  grid-template-columns:.52fr 2.48fr;
  gap:clamp(50px,8vw,130px);
}

.ch-oe-statement .ch-oe-eyebrow{
  color:#bbb5ab;
}

.ch-oe-statement-copy h2{
  max-width:1120px;
  margin:0;
  color:var(--ch-white)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(52px,7vw,106px)!important;
  font-weight:400!important;
  line-height:.94!important;
  letter-spacing:-.046em!important;
}

.ch-oe-statement-copy h2 em{
  color:#88847e;
  font-weight:400;
}

.ch-oe-statement-copy .ch-oe-body{
  width:min(100%,650px);
  margin-top:clamp(50px,6vw,85px);
  color:#aaa69f;
}

.ch-oe-statement-copy .ch-oe-body p{
  margin:0 0 24px;
}


/* PRINCIPLES */
.ch-oe-principles{
  padding:clamp(110px,13vw,200px) var(--ch-pad);
  background:var(--ch-paper-2);
}

.ch-oe-principles-head{
  display:grid;
  grid-template-columns:.52fr 2.48fr;
  gap:clamp(50px,8vw,130px);
  align-items:start;
}

.ch-oe-principles-head h2{
  max-width:1020px;
  margin:0;
  color:var(--ch-black)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(48px,6vw,90px)!important;
  font-weight:400!important;
  line-height:.97!important;
  letter-spacing:-.043em!important;
}

.ch-oe-principles-grid{
  margin-top:clamp(80px,10vw,150px);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--ch-line);
}

.ch-oe-principles-grid article{
  min-height:285px;
  padding:36px clamp(24px,3vw,48px) 42px 0;
  border-bottom:1px solid var(--ch-line);
}

.ch-oe-principles-grid article:not(:last-child){
  border-right:1px solid var(--ch-line);
  padding-right:clamp(28px,4vw,58px);
  margin-right:clamp(28px,4vw,58px);
}

.ch-oe-principles-grid span{
  color:#89847c;
  font-size:9px;
  letter-spacing:.16em;
}

.ch-oe-principles-grid h3{
  margin:60px 0 24px;
  color:var(--ch-black)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(32px,3vw,48px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}

.ch-oe-principles-grid p{
  max-width:360px;
  margin:0;
  color:#69645d;
  font-size:14px;
  line-height:1.68;
  font-weight:300;
}


/* WORKS */
.ch-oe-works{
  padding:clamp(115px,13vw,205px) var(--ch-pad);
  background:var(--ch-black);
  color:var(--ch-white);
}

.ch-oe-works-head{
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:60px;
  align-items:end;
}

.ch-oe-works .ch-oe-eyebrow{
  color:#c1bcb3;
  margin-bottom:28px;
}

.ch-oe-works-head h2{
  margin:0;
  color:var(--ch-white)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(54px,7vw,106px)!important;
  font-weight:400!important;
  line-height:.93!important;
  letter-spacing:-.048em!important;
}

.ch-oe-works-head h2 em{
  color:#8b8882;
  font-weight:400;
}

.ch-oe-works-note{
  max-width:420px;
  margin:0;
  color:#9d9992;
  font-size:13px;
  line-height:1.68;
  font-weight:300;
}

.ch-oe-product-grid{
  margin-top:clamp(78px,9vw,135px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(28px,3.2vw,50px) clamp(22px,2.8vw,44px);
}

.ch-oe-product{
  min-width:0;
}

.ch-oe-product-image,
.ch-oe-product-image img{
  background:#000;
}

.ch-oe-product-image{
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#000;
  padding:clamp(16px,2vw,24px);
}

.ch-oe-product-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  transition:transform .8s cubic-bezier(.22,.7,.25,1), opacity .4s ease;
}

.ch-oe-product:hover .ch-oe-product-image img{
  transform:scale(1.012);
}

.ch-oe-product-meta{
  padding-top:22px;
}

.ch-oe-product-type{
  margin:0 0 10px;
  color:#77746f;
  font-size:8px;
  line-height:1.4;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.ch-oe-product h3{
  margin:0;
  color:var(--ch-white)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(28px,2.6vw,42px)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}

.ch-oe-product-price{
  min-height:25px;
  margin-top:14px;
  color:#a8a49c;
  font-size:11px;
  line-height:1.5;
  font-weight:300;
}

.ch-oe-product-price del{
  opacity:.5;
}

.ch-oe-product-link{
  margin-top:20px;
  padding-top:15px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid var(--ch-line-light);
  color:#d5d1c9;
  font-size:8px;
  line-height:1.4;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.ch-oe-products-empty{
  margin-top:80px;
  padding:60px 0;
  border-top:1px solid var(--ch-line-light);
  border-bottom:1px solid var(--ch-line-light);
}

.ch-oe-products-empty p{
  margin:0 0 30px;
  color:#aaa69f;
}


/* ACQUIRE */
.ch-oe-acquire{
  position:relative;
  padding:clamp(115px,13vw,205px) var(--ch-pad);
  background:#0a0a0a;
  overflow:hidden;
  min-height:min(96svh,1100px);
  color:var(--ch-white);
}

.ch-oe-acquire-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:url("https://charmeline.be/wp-content/uploads/2025/12/tur3.webp");
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  opacity:1;
  filter:brightness(.50) saturate(.72) contrast(1.02);
}

.ch-oe-acquire-tint{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(
      90deg,
      rgba(5,5,5,.84) 0%,
      rgba(5,5,5,.66) 22%,
      rgba(5,5,5,.48) 42%,
      rgba(5,5,5,.28) 62%,
      rgba(5,5,5,.18) 80%,
      rgba(5,5,5,.12) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,5,5,.28) 0%,
      rgba(5,5,5,.24) 100%
    );
}

.ch-oe-acquire .ch-oe-inner{
  position:relative;
  z-index:2;
}

.ch-oe-acquire .ch-oe-eyebrow{
  color:rgba(255,255,255,.82);
}

.ch-oe-acquire-grid{
  display:grid;
  grid-template-columns:.52fr 2.48fr;
  gap:clamp(50px,8vw,130px);
}

.ch-oe-acquire-grid h2{
  max-width:1080px;
  margin:0;
  color:var(--ch-white)!important;
  font-family:var(--ch-serif)!important;
  font-size:clamp(50px,6.7vw,102px)!important;
  font-weight:400!important;
  line-height:.94!important;
  letter-spacing:-.046em!important;
}

.ch-oe-acquire-grid h2 em{
  color:rgba(255,255,255,.46);
  font-weight:400;
}

.ch-oe-acquire-copy{
  width:min(100%,650px);
  margin:clamp(45px,5vw,70px) 0 0;
  color:rgba(255,255,255,.72);
  font-size:clamp(16px,1.2vw,19px);
  line-height:1.72;
  font-weight:300;
}

.ch-oe-acquire-actions{
  margin-top:40px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:28px;
}

.ch-oe-button{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  min-width:220px;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.72);
  background:rgba(0,0,0,.16);
  color:var(--ch-white);
  backdrop-filter:blur(1px);
  font-size:9px;
  line-height:1;
  letter-spacing:.15em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}

.ch-oe-button:hover{
  background:rgba(255,255,255,.96);
  color:#0a0a0a;
  border-color:rgba(255,255,255,.96);
}

.ch-oe-secondary{
  padding-bottom:8px;
  border-bottom:1px solid rgba(255,255,255,.30);
  color:rgba(255,255,255,.80);
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ch-oe-acquire-caption{
  display:flex;
  justify-content:space-between;
  gap:24px;
  margin-top:clamp(170px,22vw,340px);
  color:rgba(255,255,255,.54);
  font-family:var(--ch-sans);
  font-size:8px;
  line-height:1.4;
  font-weight:500;
  letter-spacing:.17em;
  text-transform:uppercase;
}


/* Reveal */


.ch-open-editions [data-ch-reveal]{
  opacity:0;
  transform:translateY(20px);
  transition:
    opacity .8s cubic-bezier(.22,.7,.25,1),
    transform .8s cubic-bezier(.22,.7,.25,1);
}

.ch-open-editions [data-ch-reveal].ch-visible{
  opacity:1;
  transform:none;
}


/* TABLET */
@media(max-width:980px){

  .ch-oe-hero-grid,
  .ch-oe-statement-grid,
  .ch-oe-principles-head,
  .ch-oe-acquire-grid{
    grid-template-columns:1fr;
    gap:42px;
  }

  .ch-oe-kicker{
    flex-direction:row;
    gap:16px;
  }

  .ch-oe-principles-grid{
    grid-template-columns:1fr;
  }

  .ch-oe-principles-grid article,
  .ch-oe-principles-grid article:not(:last-child){
    min-height:auto;
    margin-right:0;
    padding:34px 0 40px;
    border-right:0;
  }

  .ch-oe-principles-grid h3{
    margin-top:34px;
  }

  .ch-oe-works-head{
    grid-template-columns:1fr;
    align-items:start;
  }

  .ch-oe-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* MOBILE */
@media(max-width:640px){

  .ch-open-editions{
    --ch-pad:22px;
  }

  .ch-oe-hero{
    min-height:82svh;
    padding-top:92px;
    padding-bottom:72px;
  }

  .ch-oe-hero-media img{
    object-position:center center;
  }

  .ch-oe-hero-overlay{
    background:
      linear-gradient(
        0deg,
        rgba(0,0,0,.72) 0%,
        rgba(0,0,0,.34) 56%,
        rgba(0,0,0,.22) 100%
      );
  }

  .ch-oe-hero-copy h1{
    font-size:clamp(52px,15vw,76px)!important;
  }

  .ch-oe-hero-copy h1 em{
    margin-top:4px;
  }

  .ch-oe-statement,
  .ch-oe-principles,
  .ch-oe-works,
  .ch-oe-acquire{
    padding-top:92px;
    padding-bottom:92px;
  }

  .ch-oe-statement-copy h2,
  .ch-oe-principles-head h2,
  .ch-oe-works-head h2,
  .ch-oe-acquire-grid h2{
    font-size:clamp(44px,13vw,64px)!important;
  }

  .ch-oe-product-grid{
    grid-template-columns:1fr;
    gap:54px;
  }

  .ch-oe-product-image{
    aspect-ratio:4/5;
  }

  .ch-oe-acquire-actions{
    align-items:flex-start;
    flex-direction:column;
  }

  .ch-oe-button{
    width:100%;
  }

  .ch-oe-acquire{
    background:#0a0a0a;
    min-height:86svh;
  }

  .ch-oe-acquire-bg{
    background-position:68% center;
    opacity:1;
    filter:brightness(.42) saturate(.68) contrast(1.02);
  }

  .ch-oe-acquire-tint{
    background:
      linear-gradient(
        180deg,
        rgba(5,5,5,.54) 0%,
        rgba(5,5,5,.26) 34%,
        rgba(5,5,5,.48) 100%
      );
  }

  .ch-oe-acquire-caption{
    margin-top:140px;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }
}

@media(max-width:390px){
  .ch-open-editions{
    --ch-pad:20px;
  }
}

@media(prefers-reduced-motion:reduce){
  .ch-open-editions [data-ch-reveal]{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }

  .ch-oe-product-image img{
    transition:none!important;
  }
}
