
.video-container {
  padding-bottom: 50px;
}


.centered-list-container {
  text-align: center;
}

.centered-list {
  display: inline-block;
  text-align: left;
  margin: 0 auto; /* optional for extra centering control */
  padding-left: 1.2em; /* adjust as needed to align bullets */
}

.form-tip a {
  color: #888;
}

.small-pad-bot {
    padding-bottom: 30px;
}

.space1 {
  padding-top: 50px;
}

.bg-dark {
  background-color: #232323;
}

.allura-regular {
  font-family: "Allura", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 36px;
  line-height: 110%;
}

.allura-regular strong {
  font-size: 54px;
}

.btn-mod.btn-medium {
  font-size: 14px;
}

.line01 {
  line-height: 16px !important;
  padding-top: 29px;
}

.appear-animate.js-focus-visible {
  background-color: #0B0B0B;
}

.page-section {
  background-color: #fff;
}

.home-text span {
letter-spacing: 12px;
  color: #aaa;
  font-size: 20px;
}

.bg-gray-light1 {
background-color: #f8f8f8;
padding: 90px 0;}

.footer-copy.font-alt p, .footer-copy {
  margin: 0 0 14px 0;
}

/* COntact Footer */

.cont1 {
  background-color: #fafafa;
}

/* Home page */

.main-img img {
  padding: 20px 0 35px;
}

.dl-home dd {
  color: #888;
}

/* Blog */

.blogc {
color: #111;
}

.align-blog {
width: 83.333%;
  display: block;
  margin: 0 auto; }
  
 /* Testi on home page */
 
 .small-section.space2 {
  background-color: #fff;
  color: #555;
  padding: 70px 0;
}
 
 .small-section.testim {
  background-color: #fcfcfc;
  color: #555;
  padding: 30px 0;
}

 .small-section.testim1 {
  background-color: #fff;
  color: #555;
  padding: 70px 0;
}

.small-section.testim .allura-regular {
  font-size: 25px;
}

.small-section.testim blockquote, .small-section.testim h3 {
  font-size: 12px;
  color: #888;
  font-style: italic;
  letter-spacing: 2px;
  margin: 38px 0 10px;
  text-align:center;
}

.ari {
  text-align: right;
  color: #888;
}

/* General DD & DL */

.accordion > dd, .accordion > dt {
  font-size: 14px;
}

/* Filters */

.works-filter {
  font-size: 14px; }
  
  /* Booking for */
  
.book1 label {
font-weight: normal;
  color: #000;
}

.contact-form .form-group {
  margin-bottom: 22px;
}

.book-notes {
  font-size: 12px;
  color: #888;
  font-style: italic;
}

/* booking */

.alicen {
text-align: center; 
}

.notes-grey label, .notes-grey p {
  color: #888;
  font-style: italic;
}

/* Accordion as chatGPT */ 

#about-grid .btn-mod {
  margin-top: 10px;
}

#about-grid h4 {
  margin-bottom: 10px;
}

#about-grid p {
  font-size: 14px;
  color: #666;
}

/* Studio */

.oliv {
    padding-top:0;
}

.oliv img {
    padding-bottom:30px;
}

.small-section.oliv1 {
    padding-bottom:35px;
}

/* Lingerie listings */
.shop-card { text-align:center; }
.shop-card .shop-logo { display:block; margin:0 auto 8px; object-fit:contain; border: 1px solid #ddd; }
.shop-card .shop-name { display:block; font-weight:700; margin-bottom:6px; }
.shop-card .shop-address, .shop-card .shop-phone { display:block; font-size:0.95em; margin-bottom:6px; }
.shop-card .shop-links a { margin:0 6px; display:inline-block; }
.shop-card i.fa { margin-right:6px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }

/* Uniform card height on desktop/tablet */
@media (min-width: 768px) {
  .shop-card {
    min-height: 364px;            /* tweak this number to fit your tallest cards */
    display: flex;                /* keeps layout stable inside the card */
    flex-direction: column;
  }
  /* Reserve one line for these rows so missing/short text doesn't shift heights */
  .shop-name    { min-height: 1.6em; display:block; }
  .shop-address { min-height: 1.6em; display:block; }
  .shop-phone   { min-height: 1.6em; display:block; }

  /* Keep the links row anchored at the bottom of the card */
  .shop-links { margin-top: auto; }
}

/* On small screens let cards grow naturally so they don’t look too tall */
@media (max-width: 767.98px) {
  .shop-card { min-height: 0; }   /* or a smaller value if you prefer */
}

.na {
  font-size: 13px;
}

  /* Simple, mobile-first portrait page photo*/
  .profile {
    margin: 0 0 1rem 0;
    width: 100%;
    max-width: 480px;      /* never exceed the real image width */
  }
  .profile img {
    display: block;
    width: 100%;           /* full width on mobile */
    height: auto;          /* preserve aspect ratio */
  }
  @media (min-width: 768px) {
    .profile {
      float: left;         /* align left on desktop, text wraps on the right */
      margin: 0 104px 20px 0;  /* breathing room to the right/bottom */
    }
  }

/* General Heading and paragraphs for SEO */
 {
    
}


/* Base (mobile-first) */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-size: 16px;         /* readable on dense phones */
  line-height: 26px;       /* ~1.625 for comfort */
}

p { 
    margin: 0 0 16px;
    color: #888; }
    
a {
    color: #555;
}

.small, .meta { font-size: 14px; line-height: 22px; }  /* never go below 14px on mobile */
.lead {
  font-size: 18px;
  font-weight: 900;
}

/* Headings (mobile) */
.hs-line-1, .hs-line-11 { font-size: 28px; line-height: 36px; }
.hs-line-6, .hs-line-4, h2, .newsletter-label, .banner-heading { font-size: 24px; line-height: 32px; }
h3 { font-size: 20px; line-height: 28px; }
h4 { font-size: 18px; line-height: 26px; }

/* Extra-small screens (≤360px logical width) – make text a touch larger */
@media (max-width: 360px) {
  body { font-size: 17px; line-height: 28px; }
  .hs-line-1, .hs-line-11 { font-size: 30px; line-height: 38px; }
  .hs-line-6, .hs-line-4, h2, .newsletter-label, .banner-heading { font-size: 26px; line-height: 34px; }
  h3 { font-size: 22px; line-height: 30px; }
  h4 { font-size: 20px; line-height: 28px; }
  .small, .meta { font-size: 15px; line-height: 23px; }
}

/* Tablets / small laptops (≥768px) */
@media (min-width: 768px) {
  body { font-size: 17px; line-height: 28px; }
  .hs-line-1, .hs-line-11 { font-size: 34px; line-height: 42px; }
  .hs-line-6, .hs-line-4, h2, .newsletter-label, .banner-heading { font-size: 28px; line-height: 36px; }
  h3 { font-size: 22px; line-height: 30px; }
  h4 { font-size: 18px; line-height: 26px; }
}

/* Desktop / large screens (≥1200px) */

@media (min-width: 1200px) {
  body { font-size: 18px; line-height: 30px; }
  /* Compact, SEO-safe headings */
  .hs-line-1, .hs-line-11 { font-size: 30px; line-height: 36px; }
  .home-text span { font-size: 26px;}
  .hs-line-6, .hs-line-4, h2, .newsletter-label, .banner-heading { font-size: 24px; line-height: 32px; }
  h3 { font-size: 20px; line-height: 28px; }
  h4 { font-size: 18px; line-height: 26px; }
}

/* Optional: buttons/nav/inputs never too small */
button, input, select, textarea {
  font-size: 16px;         /* avoids iOS zoom and keeps tap targets readable */
  line-height: 24px;
}


/* FIx sMall issue with background header */

@media (max-width: 1024px) {
.page-section.bg-dark-alfa-70.parallax-3 {
  background-position: 50% 0 !important;
}}

.space-home {
  padding-top: 60px;
}

/* ---------- HERO BACKGROUND (responsive, with JPG fallback) ---------- */

/* Hero layout using <picture>/<img> background */
#home {
  position: relative;
  min-height: 100vh;          /* full screen */
  overflow: hidden;
}

/* The hero image fills the section behind the content */
#home .hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: -2;                 /* under overlay + text */
  display: block;
}

/* Dark overlay (replaces bg-dark-alfa-30) */
#home::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.30); /* 30% black tint */
  z-index: -1;
}

/* Make sure hero text sits above image/overlay */
#home .home-content,
#home .home-text {
  position: relative;
  z-index: 0;
}
