/* ───── FONTS ───── */
@font-face {
  font-family: 'Betty Serif';
  src: url('../../wp-content/uploads/2024/10/Betty-Serif.otf') format('opentype');
  font-weight: 400; font-display: swap;
}
@font-face {
  font-family: 'Betty Script';
  src: url('../../wp-content/uploads/2024/10/Betty-Script.otf') format('opentype');
  font-weight: 400; font-display: swap;
}
@font-face {
  font-family: 'Sellvinny';
  src: url('../../wp-content/uploads/2024/10/Sellviny.otf') format('opentype');
  font-weight: 400; font-display: swap;
}

/* ───── VARIABLES ───── */
:root {
  --dark:   #575756;
  --mid:    #9a8f8b;
  --light:  #7a6f6c;
  --beige:  #F1ECEA;
  --beige2: #e4dbd7;
  --ink:    #3a3330;
  --border: rgba(87,87,86,.18);
  --serif:  'Betty Serif', serif;
  --script: 'Betty Script','Sellvinny',cursive;
  --sans:   'DM Sans','Forum',sans-serif;
  --maxw:   1200px;
}

/* ───── RESET ───── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--dark);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}

/* ───── BUTTON ───── */
.btn{
  display:inline-block;color:var(--dark);border:1px solid #b8afa9;
  padding:14px 44px;text-transform:uppercase;letter-spacing:.14em;
  font-size:.72rem;border-radius:2px;text-decoration:none;
  transition:background .2s,color .2s;font-family:var(--sans);cursor:pointer;
  background:none;
}
.btn:hover{background:var(--dark);color:var(--beige)}

/* ───── HEADER ───── */
.site-header{
  position:sticky;top:0;z-index:500;
  background:#fff;box-shadow:0 1px 10px rgba(0,0,0,.06);
}
.header-inner{
  max-width:var(--maxw);margin:0 auto;padding:0 40px;
  height:72px;display:flex;align-items:center;justify-content:space-between;
}
.header-logo img{width:200px;height:auto}
.header-nav ul{display:flex;align-items:center;gap:32px}
.header-nav a{
  font-size:.78rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--dark);transition:color .2s;
}
.header-nav a:hover{color:var(--mid)}

/* Dropdown */
.nav-dropdown{position:relative}
.nav-dropdown>a{display:flex;align-items:center;gap:5px}
.nav-dropdown>a::after{
  content:'';width:6px;height:6px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);display:inline-block;flex-shrink:0;
}
.dropdown-menu{
  position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);
  background:#fff;border:1px solid var(--border);border-radius:4px;
  min-width:160px;padding:8px 0;opacity:0;pointer-events:none;
  transition:opacity .2s;z-index:10;
}
.nav-dropdown:hover .dropdown-menu{opacity:1;pointer-events:auto}
.dropdown-menu li a{
  display:block;padding:10px 20px;font-size:.75rem;
  letter-spacing:.08em;text-transform:uppercase;
}
.dropdown-menu li a:hover{background:var(--beige)}

/* ───── HAMBURGER ───── */
.bety-ham{
  display:none;position:fixed;right:16px;top:14px;z-index:700;
  flex-direction:column;justify-content:center;align-items:center;
  gap:5px;width:44px;height:44px;padding:10px;
  background:none;border:none;cursor:pointer;
}
@media(max-width:1024px){.bety-ham{display:flex}.header-nav{display:none}}
.bety-ham span{
  display:block;width:22px;height:1.5px;background:var(--dark);
  border-radius:2px;transition:transform .32s ease,opacity .2s ease;transform-origin:center;
}
.bety-ham.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.bety-ham.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.bety-ham.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ───── MOBILE OVERLAY ───── */
.bety-overlay{
  position:fixed;top:0;left:0;right:0;bottom:0;
  background:#fff;z-index:550;
  transform:translateY(-100%);visibility:hidden;
  transition:transform .4s cubic-bezier(.4,0,.2,1),visibility 0s linear .4s;
  overflow-y:auto;display:flex;flex-direction:column;
}
.bety-overlay.open{transform:translateY(0);visibility:visible;transition:transform .4s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s}
.bety-overlay-inner{
  display:flex;flex-direction:column;align-items:center;
  padding:100px 24px 48px;flex:1;
}
.bety-overlay-nav{width:100%;display:flex;flex-direction:column;align-items:center}
.bety-overlay-nav a{
  display:block;padding:14px 0;font-size:1rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--dark);
  text-align:center;width:100%;border-bottom:1px solid rgba(87,87,86,.08);
}
.bety-overlay-nav a:first-child{border-top:1px solid rgba(87,87,86,.08)}
.bety-overlay-sub{
  display:none;flex-direction:column;align-items:center;
  width:100%;background:var(--beige);
}
.bety-overlay-sub.open{display:flex}
.bety-overlay-sub a{
  font-size:.82rem!important;letter-spacing:.12em!important;
  color:var(--mid)!important;
  border-bottom:1px solid rgba(87,87,86,.06)!important;
  border-top:none!important;
}
.bety-cofotim-toggle{display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}
.bety-cofotim-toggle::after{
  content:'';width:7px;height:7px;
  border-right:1.5px solid var(--dark);border-bottom:1.5px solid var(--dark);
  transform:rotate(45deg) translateY(-2px);display:inline-block;transition:transform .2s;
}
.bety-cofotim-toggle.open::after{transform:rotate(-135deg) translateY(-2px)}
.overlay-social{display:flex;gap:24px;margin-top:40px}
.overlay-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--dark)}
.overlay-social svg{width:20px;height:20px;fill:currentColor}

/* ───── FOOTER ───── */
.bety-footer{background:var(--beige)}
.bety-footer-main{padding:22px 50px}
.bety-footer-inner{
  max-width:var(--maxw);margin:0 auto;
  display:flex;align-items:center;gap:0;
}
.bety-footer-logo{width:100px;height:auto}
.bety-footer-divider{width:1px;background:var(--border);align-self:stretch;margin:0 32px}
.bety-footer-nav{display:flex;flex-wrap:wrap;gap:8px 24px;flex:1}
.bety-footer-nav a{
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--dark);transition:color .2s;
}
.bety-footer-nav a:hover{color:var(--mid)}
.bety-footer-social{display:flex;gap:16px;align-items:center}
.bety-footer-social a{display:flex;align-items:center;justify-content:center;color:var(--dark);transition:color .2s}
.bety-footer-social a:hover{color:var(--mid)}
.bety-footer-social svg{width:18px;height:18px;fill:currentColor}
.bety-footer-rule{height:1px;background:var(--border);margin:0 50px}
.bety-footer-bar{
  max-width:var(--maxw);margin:0 auto;padding:14px 50px;
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;
  gap:8px;font-size:.68rem;color:var(--mid);letter-spacing:.06em;
}
.bety-footer-bar a{color:inherit;transition:color .2s}
.bety-footer-bar a:hover{color:var(--dark)}
@media(max-width:768px){
  .bety-footer-inner{flex-direction:column;align-items:flex-start;gap:20px}
  .bety-footer-divider{display:none}
  .bety-footer-main{padding:24px 20px}
  .bety-footer-rule{margin:0 20px}
  .bety-footer-bar{padding:12px 20px;flex-direction:column;align-items:flex-start}
}

/* ───── BACK TO TOP ───── */
.back-to-top{
  position:fixed;bottom:28px;right:28px;z-index:9999;
  width:44px;height:44px;background:var(--beige);border:1px solid var(--border);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  cursor:pointer;opacity:0;transform:translateY(12px);
  transition:opacity .3s,transform .3s;color:var(--dark);
}
.back-to-top.visible{opacity:1;transform:translateY(0)}
.back-to-top svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}

/* ───── SWIPER ───── */
.swiper{width:100%;overflow:hidden;position:relative}

/* ───── PAGE HERO ───── */
.page-hero{text-align:center;padding:80px 24px 60px}
.page-hero h1{
  font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.8rem);
  color:var(--ink);font-weight:400;line-height:1.1;
  text-transform:uppercase;letter-spacing:.04em;
}
.page-hero .script{
  font-family:var(--script);font-size:clamp(2rem,4vw,3.2rem);
  color:var(--mid);font-weight:400;display:inline-block;
  transform:rotate(-2deg);margin-top:.3rem;
}

/* ───── QUOTE SECTION ───── */
.quote-section{background:var(--beige2);padding:72px 24px;text-align:center}
.quote-section h2{
  font-family:var(--serif);font-size:clamp(1.4rem,3vw,2.2rem);
  color:var(--ink);font-weight:400;letter-spacing:.04em;text-transform:uppercase;
}
.quote-section h2.script{
  font-family:var(--script);font-size:clamp(1.6rem,3.5vw,2.6rem);
  color:var(--mid);font-weight:400;text-transform:none;
  display:inline-block;transform:rotate(-2deg);margin-top:.5rem;
}

/* ───── TWO-COL ───── */
.two-col-section{padding:80px 40px}
.two-col-inner{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;
}
.two-col-inner.reversed{direction:rtl}
.two-col-inner.reversed>*{direction:ltr}
.two-col-text h2{
  font-family:var(--serif);font-size:clamp(1.4rem,2.5vw,2rem);
  font-weight:400;color:var(--ink);text-transform:uppercase;
  letter-spacing:.06em;margin-bottom:1.2rem;
}
.two-col-text p{font-size:.92rem;color:var(--light);line-height:1.85;margin-bottom:1rem}
.two-col-text .eyebrow{
  font-size:.72rem;font-weight:500;letter-spacing:.22em;
  text-transform:uppercase;color:var(--mid);margin-bottom:.8rem;display:block;
}
.two-col-text .script-sub{
  font-family:var(--script);font-size:1.8rem;color:var(--mid);
  display:block;margin-top:.8rem;
}
@media(max-width:768px){
  .two-col-inner{grid-template-columns:1fr;gap:32px}
  .two-col-inner.reversed{direction:ltr}
  .two-col-section{padding:60px 20px}
}

/* ───── INTRO ───── */
.intro-section{padding:60px 40px}
.intro-inner{max-width:800px;margin:0 auto;text-align:center}
.intro-inner p{font-size:.95rem;color:var(--light);line-height:1.85}
.intro-inner p strong{color:var(--dark);font-weight:500}
@media(max-width:768px){.intro-section{padding:48px 20px}}

/* ───── CATEGORY GRID ───── */
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
@media(max-width:768px){.category-grid{grid-template-columns:1fr}}
.category-card{position:relative;overflow:hidden;aspect-ratio:2/3;display:block}
.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.category-card:hover img{transform:scale(1.04)}
.category-card-label{
  position:absolute;bottom:24px;left:24px;
  font-family:var(--serif);font-size:1.4rem;color:#fff;
  text-transform:uppercase;letter-spacing:.06em;text-shadow:0 1px 8px rgba(0,0,0,.3);
}

/* ───── TESTIMONIALS ───── */
.testimonials-section{padding:80px 40px}
.testimonials-inner{max-width:var(--maxw);margin:0 auto}
.testimonials-header{text-align:center;margin-bottom:48px}
.testimonials-header h2{
  font-family:var(--serif);font-size:clamp(1.8rem,3.5vw,2.8rem);
  font-weight:400;color:var(--ink);text-transform:uppercase;letter-spacing:.04em;
}
.testimonials-header h2.script{
  font-family:var(--script);font-size:clamp(2rem,4vw,3.2rem);
  color:var(--mid);font-weight:400;text-transform:none;
  display:block;transform:rotate(-2deg);margin-top:.3rem;
}
.testimonials-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media(max-width:1024px){.testimonials-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.testimonials-grid{grid-template-columns:1fr}}
.testimonial-card{
  background:var(--beige);border-radius:4px;padding:28px 24px;
  display:flex;flex-direction:column;gap:16px;
}
.testimonial-photo{width:60px;height:60px;border-radius:50%;object-fit:cover}
.testimonial-quote{font-family:var(--serif);font-size:1.6rem;color:var(--mid);opacity:.5;line-height:1}
.testimonial-text{font-size:.88rem;color:var(--light);line-height:1.75;flex:1}
.testimonial-author{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mid)}
@media(max-width:768px){.testimonials-section{padding:60px 20px}}

/* ───── CTA ───── */
.bety-cta-section{
  background:var(--beige);padding:72px 40px 80px;
  text-align:center;position:relative;overflow:hidden;
}
.bety-cta-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.bety-cta-eyebrow{font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--mid)}
.bety-cta-heading{
  font-family:var(--script);font-size:clamp(2.4rem,6vw,4.2rem);
  color:var(--ink);line-height:1.15;margin:.4rem 0 1rem;
}
.bety-cta-text{font-size:.95rem;color:var(--light);max-width:480px;margin:0 auto 2rem;line-height:1.7}
.bety-cta-deco{
  font-family:var(--serif);font-size:clamp(5rem,12vw,9rem);
  color:rgba(87,87,86,.06);position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none;
}

/* ───── PRICING ───── */
.pricing-section{background:var(--beige2);padding:80px 40px}
.pricing-inner{max-width:680px;margin:0 auto}
.pricing-inner h2{
  font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.6rem);
  font-weight:400;color:var(--ink);text-transform:uppercase;
  letter-spacing:.04em;margin-bottom:1.8rem;
}
.pricing-inner ul{display:flex;flex-direction:column;gap:10px;margin-bottom:2rem}
.pricing-inner li{font-size:.9rem;color:var(--light);line-height:1.6;padding-left:1.2rem;position:relative}
.pricing-inner li::before{content:'—';position:absolute;left:0;color:var(--mid)}
.pricing-price{font-family:var(--serif);font-size:clamp(2.4rem,5vw,3.6rem);color:var(--ink);font-weight:400;margin-bottom:1.6rem}
.pricing-note{font-size:.88rem;color:var(--light);line-height:1.75}
.pricing-note strong{color:var(--dark)}
@media(max-width:768px){.pricing-section{padding:60px 20px}}

/* ───── CONTACT SECTION ───── */
.contact-section{background:var(--beige);padding:80px 40px}
.contact-section-inner{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;
}
.contact-info h2{
  font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);
  font-weight:400;color:var(--ink);text-transform:uppercase;
  letter-spacing:.04em;line-height:1.2;margin-bottom:1.2rem;
}
.contact-info p{font-size:.9rem;color:var(--light);line-height:1.7;margin-bottom:.8rem}
.contact-detail{font-size:.88rem;color:var(--dark);font-weight:500}
.contact-signature{
  font-family:var(--script);font-size:2.6rem;color:var(--mid);
  display:inline-block;transform:rotate(-5deg);margin-top:1.5rem;line-height:1;
}
@media(max-width:768px){
  .contact-section-inner{grid-template-columns:1fr;gap:40px}
  .contact-section{padding:60px 20px}
}

/* ───── FORM ───── */
.bety-form{display:flex;flex-direction:column;gap:16px}
.bety-form input,
.bety-form textarea,
.bety-form select{
  width:100%;background:transparent;border:none;
  border-bottom:1px solid rgba(87,87,86,.3);padding:12px 0;
  font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--dark);outline:none;transition:border-color .2s;
}
.bety-form input::placeholder,
.bety-form textarea::placeholder{color:var(--mid)}
.bety-form input:focus,
.bety-form textarea:focus,
.bety-form select:focus{border-color:var(--dark)}
.bety-form textarea{resize:vertical;min-height:100px}
.bety-form select{appearance:none;cursor:pointer}
.bety-form .form-submit{margin-top:8px}

/* ───── FAQ ───── */
.faq-section{padding:60px 40px 80px}
.faq-inner{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--border)}
.faq-question{
  display:flex;justify-content:space-between;align-items:center;
  padding:22px 0;cursor:pointer;font-size:.9rem;font-weight:600;
  letter-spacing:.04em;color:var(--ink);gap:16px;
  background:none;border:none;width:100%;text-align:left;font-family:var(--sans);
}
.faq-chevron{
  width:18px;height:18px;border-right:2px solid var(--mid);border-bottom:2px solid var(--mid);
  transform:rotate(45deg);flex-shrink:0;transition:transform .25s;
}
.faq-item.open .faq-chevron{transform:rotate(-135deg)}
.faq-answer{
  font-size:.88rem;color:var(--light);line-height:1.8;
  max-height:0;overflow:hidden;transition:max-height .35s ease,padding .25s;
}
.faq-item.open .faq-answer{max-height:600px;padding-bottom:20px}
@media(max-width:768px){.faq-section{padding:40px 20px 60px}}

/* ───── GDPR ───── */
.gdpr-wrap{max-width:860px;margin:0 auto;padding:48px 24px 80px;font-family:var(--sans)}
.gdpr-hero{text-align:center;margin-bottom:56px}
.gdpr-hero h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3rem);color:var(--ink);font-weight:400;margin:0 0 .5rem}
.gdpr-subtitle{color:var(--mid);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin:0}
.gdpr-sections{display:flex;flex-direction:column;gap:24px}
.gdpr-card{display:flex;gap:28px;background:#faf8f7;border:1px solid rgba(87,87,86,.1);border-radius:6px;padding:32px 28px}
.gdpr-num{font-family:var(--serif);font-size:3rem;color:rgba(87,87,86,.12);line-height:1;flex-shrink:0;min-width:48px}
.gdpr-body h2{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--mid);margin:0 0 1rem}
.gdpr-body h3{font-size:.8rem;font-weight:700;color:var(--dark);margin:1.2rem 0 .4rem}
.gdpr-body p,.gdpr-body li{font-size:.9rem;color:#7a6f6c;line-height:1.75}
.gdpr-body ul{padding-left:1.2rem;list-style:disc}
.gdpr-body li{margin-bottom:.4rem}
.gdpr-body a{color:var(--dark)}
.gdpr-body a:hover{color:var(--ink)}
.gdpr-card-cta{background:var(--beige);border-color:transparent}
@media(max-width:600px){
  .gdpr-card{padding:22px 20px;gap:16px}
  .gdpr-num{font-size:2rem;min-width:36px}
}
