:root{
  --ol-cream: #FBF5EC;
  --ol-cream-dark: #F1E6D4;
  --ol-white: #FFFCF6;
  --ol-ink: #2C2016;
  --ol-ink-soft: #5A4B3B;
  --ol-terracotta: #C1613C;
  --ol-terracotta-dark: #A24C2C;
  --ol-olive: #55613B;
  --ol-olive-dark: #3E4629;
  --ol-gold: #D9A441;
  --ol-gold-light: #F0D08C;
  --ol-line: rgba(44,32,22,0.12);

  --ol-space-1: 0.25rem;
  --ol-space-2: 0.5rem;
  --ol-space-3: 0.75rem;
  --ol-space-4: 1rem;
  --ol-space-5: 1.5rem;
  --ol-space-6: 2rem;
  --ol-space-8: 3rem;
  --ol-space-10: 4rem;
  --ol-space-12: 5rem;
  --ol-space-16: 7rem;

  --ol-radius-sm: 8px;
  --ol-radius-md: 14px;
  --ol-radius-lg: 24px;
  --ol-radius-xl: 36px;
  --ol-radius-full: 999px;

  --ol-shadow-sm: 0 1px 2px rgba(44,32,22,0.08), 0 1px 1px rgba(44,32,22,0.04);
  --ol-shadow-md: 0 6px 16px rgba(44,32,22,0.10), 0 2px 4px rgba(44,32,22,0.08);
  --ol-shadow-lg: 0 20px 40px rgba(44,32,22,0.16), 0 8px 16px rgba(44,32,22,0.08);
  --ol-shadow-polaroid: 0 14px 28px rgba(44,32,22,0.22), 0 4px 8px rgba(44,32,22,0.14), 0 1px 0 rgba(255,255,255,0.6) inset;

  --ol-gradient-warm: linear-gradient(135deg, var(--ol-terracotta) 0%, var(--ol-gold) 100%);
  --ol-gradient-soft: linear-gradient(160deg, var(--ol-cream) 0%, var(--ol-cream-dark) 100%);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'DM Sans', sans-serif;
  background:var(--ol-cream);
  color:var(--ol-ink);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Urbanist', sans-serif;font-weight:800;color:var(--ol-ink);line-height:1.15;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
ul{list-style:none;}

.ol-container{max-width:1240px;margin:0 auto;padding:0 var(--ol-space-5);}

.ol-section-tag{
  display:inline-block;
  font-family:'Urbanist',sans-serif;
  font-weight:700;
  font-size:0.8rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--ol-terracotta-dark);
  margin-bottom:var(--ol-space-3);
}
.ol-section-title{
  font-size:clamp(1.7rem, 1.2rem + 2vw, 2.6rem);
  margin-bottom:var(--ol-space-4);
  max-width:46ch;
}
.ol-section-lead{
  font-size:clamp(1rem, 0.95rem + 0.2vw, 1.15rem);
  color:var(--ol-ink-soft);
  max-width:62ch;
  margin-bottom:var(--ol-space-8);
}


.ol-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0.5rem;
  padding:0.85rem 1.6rem;
  border-radius:var(--ol-radius-full);
  font-family:'Urbanist',sans-serif;
  font-weight:700;
  font-size:0.95rem;
  min-height:44px;
  transition:transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
  white-space:nowrap;
}
.ol-btn--primary{
  background:var(--ol-gradient-warm);
  color:var(--ol-white);
  box-shadow:var(--ol-shadow-md);
}
.ol-btn--primary:hover{transform:translateY(-2px);box-shadow:var(--ol-shadow-lg);}
.ol-btn--ghost{
  background:transparent;
  color:var(--ol-ink);
  border:1.5px solid var(--ol-line);
}
.ol-btn--ghost:hover{border-color:var(--ol-terracotta);color:var(--ol-terracotta-dark);background:rgba(193,97,60,0.06);}
.ol-btn--sm{padding:0.6rem 1.2rem;font-size:0.85rem;min-height:40px;}
.ol-btn--lg{padding:1rem 2rem;font-size:1.05rem;}


.ol-nav{
  position:fixed;top:0;left:0;right:0;
  z-index:100;
  padding:var(--ol-space-4) 0;
  transition:background 0.4s ease, box-shadow 0.4s ease, padding 0.4s ease;
}
.ol-nav__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--ol-space-4);}
.ol-nav.is-solid{
  background:rgba(251,245,236,0.92);
  backdrop-filter:blur(14px);
  box-shadow:var(--ol-shadow-sm);
  padding:var(--ol-space-3) 0;
}
.ol-nav__logo{display:flex;align-items:center;gap:0.6rem;font-family:'Urbanist',sans-serif;font-weight:800;font-size:1.2rem;}
.ol-nav__links{display:flex;gap:var(--ol-space-6);}
.ol-nav__link{
  font-weight:500;font-size:0.95rem;color:var(--ol-ink-soft);
  position:relative;
  transition:color 0.25s ease;
}
.ol-nav__link::after{
  content:'';position:absolute;left:0;bottom:-6px;width:0;height:2px;
  background:var(--ol-gradient-warm);border-radius:2px;
  transition:width 0.3s ease;
}
.ol-nav__link:hover,.ol-nav__link.is-active{color:var(--ol-ink);}
.ol-nav__link:hover::after,.ol-nav__link.is-active::after{width:100%;}
.ol-nav__actions{display:flex;gap:var(--ol-space-3);}
.ol-nav__toggle{
  display:none;flex-direction:column;gap:5px;padding:8px;
  width:44px;height:44px;align-items:center;justify-content:center;
}
.ol-nav__toggle span{width:22px;height:2px;background:var(--ol-ink);border-radius:2px;transition:0.3s;}


.ol-mobile-menu{
  position:fixed;inset:0;z-index:200;
  visibility:hidden;
  pointer-events:none;
}
.ol-mobile-menu.is-open{visibility:visible;pointer-events:auto;}
.ol-mobile-menu__overlay{
  position:absolute;inset:0;
  background:rgba(44,32,22,0.45);
  opacity:0;
  transition:opacity 0.35s ease;
}
.ol-mobile-menu.is-open .ol-mobile-menu__overlay{opacity:1;}
.ol-mobile-menu__panel{
  position:absolute;top:0;left:0;bottom:0;
  width:80%;max-width:340px;
  background:var(--ol-white);
  box-shadow:var(--ol-shadow-lg);
  padding:var(--ol-space-6) var(--ol-space-5);
  display:flex;flex-direction:column;
  transform:translateX(-100%);
  transition:transform 0.4s cubic-bezier(0.22,0.9,0.28,1);
}
.ol-mobile-menu.is-open .ol-mobile-menu__panel{transform:translateX(0);}
.ol-mobile-menu__head{display:flex;align-items:center;gap:0.6rem;font-family:'Urbanist',sans-serif;font-weight:800;font-size:1.2rem;margin-bottom:var(--ol-space-8);}
.ol-mobile-menu__links{display:flex;flex-direction:column;gap:var(--ol-space-2);flex:1;}
.ol-mobile-menu__link{
  font-family:'Urbanist',sans-serif;font-weight:700;font-size:1.15rem;
  padding:var(--ol-space-3) 0;border-bottom:1px solid var(--ol-line);
  opacity:0;transform:translateX(-16px);
  transition:opacity 0.35s ease, transform 0.35s ease, color 0.25s ease;
}
.ol-mobile-menu.is-open .ol-mobile-menu__link{opacity:1;transform:translateX(0);}
.ol-mobile-menu.is-open .ol-mobile-menu__link:nth-child(1){transition-delay:0.08s;}
.ol-mobile-menu.is-open .ol-mobile-menu__link:nth-child(2){transition-delay:0.14s;}
.ol-mobile-menu.is-open .ol-mobile-menu__link:nth-child(3){transition-delay:0.20s;}
.ol-mobile-menu.is-open .ol-mobile-menu__link:nth-child(4){transition-delay:0.26s;}
.ol-mobile-menu.is-open .ol-mobile-menu__link:nth-child(5){transition-delay:0.32s;}
.ol-mobile-menu__link:hover{color:var(--ol-terracotta-dark);}
.ol-mobile-menu__actions{display:flex;flex-direction:column;gap:var(--ol-space-3);margin-top:var(--ol-space-6);}


.ol-hero{
  position:relative;
  padding:calc(var(--ol-space-16) + 2rem) 0 var(--ol-space-12);
  background:var(--ol-gradient-soft);
  overflow:hidden;
}
.ol-hero::before{
  content:'';position:absolute;top:-120px;right:-120px;width:420px;height:420px;
  background:radial-gradient(circle, rgba(217,164,65,0.25), transparent 70%);
  border-radius:50%;
}
.ol-hero__grid{
  display:grid;grid-template-columns:1.1fr 1fr;gap:var(--ol-space-10);align-items:center;
  position:relative;z-index:1;
}
.ol-hero__eyebrow{
  display:inline-block;font-family:'Urbanist',sans-serif;font-weight:700;font-size:0.85rem;
  letter-spacing:0.06em;text-transform:uppercase;color:var(--ol-olive-dark);
  background:rgba(85,97,59,0.10);padding:0.4rem 0.9rem;border-radius:var(--ol-radius-full);
  margin-bottom:var(--ol-space-5);
}
.ol-hero__title{font-size:clamp(2.1rem, 1.4rem + 3.4vw, 3.6rem);margin-bottom:var(--ol-space-5);}
.ol-hero__text{color:var(--ol-ink-soft);font-size:1.08rem;max-width:52ch;margin-bottom:var(--ol-space-6);}
.ol-hero__actions{display:flex;gap:var(--ol-space-4);flex-wrap:wrap;margin-bottom:var(--ol-space-6);}
.ol-hero__meta{display:flex;gap:var(--ol-space-6);flex-wrap:wrap;font-size:0.9rem;color:var(--ol-ink-soft);font-weight:500;}
.ol-hero__meta div{display:flex;align-items:center;gap:0.5rem;}
.ol-hero__meta i{color:var(--ol-terracotta);}

.ol-hero__images{position:relative;min-height:420px;}
.atropos{width:100%;height:100%;}
.atropos-inner{position:relative;width:100%;height:100%;}

.ol-polaroid{
  background:var(--ol-white);
  padding:10px 10px 34px 10px;
  border-radius:var(--ol-radius-sm);
  box-shadow:var(--ol-shadow-polaroid);
  display:inline-block;
  position:relative;
}
.ol-polaroid img{
  border-radius:2px;
  filter:saturate(0.92) sepia(0.08) contrast(1.02);
  width:100%;height:100%;object-fit:cover;
}
.ol-polaroid__cap{
  position:absolute;bottom:8px;left:0;right:0;text-align:center;
  font-family:'Urbanist',sans-serif;font-weight:600;font-size:0.78rem;
  color:var(--ol-ink-soft);letter-spacing:0.02em;
}
.ol-handwrite{font-style:italic;}

.ol-hero__images .ol-polaroid--a{
  position:absolute;top:0;left:10%;width:230px;height:280px;
  transform:rotate(-6deg);z-index:2;
}
.ol-hero__images .ol-polaroid--b{
  position:absolute;top:38%;left:44%;width:190px;height:230px;
  transform:rotate(5deg);z-index:3;
}
.ol-hero__images .ol-polaroid--c{
  position:absolute;bottom:0;left:0;width:170px;height:200px;
  transform:rotate(-3deg);z-index:1;
}


.ol-strip{background:var(--ol-olive);padding:var(--ol-space-5) 0;}
.ol-strip__inner{display:flex;align-items:flex-start;gap:var(--ol-space-3);color:var(--ol-cream);}
.ol-strip__inner i{margin-top:3px;color:var(--ol-gold-light);}
.ol-strip__inner p{font-size:0.92rem;max-width:80ch;}


.ol-values{padding:var(--ol-space-12) 0;}
.ol-values__grid{
  container-type:inline-size;container-name:ol-values;
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ol-space-5);
}
.ol-value-card{
  background:var(--ol-white);
  border:1px solid var(--ol-line);
  border-radius:var(--ol-radius-lg);
  padding:var(--ol-space-6);
  box-shadow:var(--ol-shadow-sm);
  transition:box-shadow 0.3s ease, transform 0.3s ease;
}
.ol-value-card:hover{box-shadow:var(--ol-shadow-md);transform:translateY(-4px);}
.ol-value-card__icon{
  width:52px;height:52px;border-radius:var(--ol-radius-md);
  background:var(--ol-gradient-warm);
  display:flex;align-items:center;justify-content:center;
  color:var(--ol-white);font-size:1.3rem;margin-bottom:var(--ol-space-4);
}
.ol-value-card h3{font-size:1.15rem;margin-bottom:var(--ol-space-2);}
.ol-value-card p{color:var(--ol-ink-soft);font-size:0.95rem;}

@container ol-values (min-width: 760px){
  .ol-values__grid{grid-template-columns:repeat(4,1fr);}
}


.ol-modules{padding:var(--ol-space-12) 0;background:var(--ol-cream-dark);}
.ol-bento-grid{
  container-type:inline-size;container-name:ol-bento;
  display:grid;grid-template-columns:1fr;gap:var(--ol-space-5);
}
.ol-bento-card{
  background:var(--ol-white);border-radius:var(--ol-radius-lg);
  padding:var(--ol-space-6);border:1px solid var(--ol-line);
  box-shadow:var(--ol-shadow-sm);position:relative;
  transition:box-shadow 0.3s ease, transform 0.3s ease;
}
.ol-bento-card:hover{box-shadow:var(--ol-shadow-md);transform:translateY(-3px);}
.ol-bento-card__num{
  font-family:'Urbanist',sans-serif;font-weight:800;font-size:0.85rem;
  color:var(--ol-terracotta-dark);letter-spacing:0.05em;margin-bottom:var(--ol-space-3);
}
.ol-bento-card h3{font-size:1.25rem;margin-bottom:var(--ol-space-3);}
.ol-bento-card p{color:var(--ol-ink-soft);font-size:0.95rem;}
.ol-bento-card__img{
  width:100%;height:180px;object-fit:cover;border-radius:var(--ol-radius-md);
  margin-bottom:var(--ol-space-4);filter:saturate(0.9) sepia(0.06);
}
.ol-bento-card--featured{background:var(--ol-gradient-soft);border-color:transparent;}

@container ol-bento (min-width: 640px){
  .ol-bento-grid{grid-template-columns:repeat(2,1fr);}
  .ol-bento-card--featured, .ol-bento-card--wide{grid-column:span 2;}
}
@container ol-bento (min-width: 980px){
  .ol-bento-grid{grid-template-columns:repeat(3,1fr);}
  .ol-bento-card--featured{grid-column:span 2;grid-row:span 2;display:flex;flex-direction:column;justify-content:space-between;}
  .ol-bento-card--wide{grid-column:span 3;}
}


.ol-video-tag{
  display:inline-flex;align-items:center;gap:0.4rem;
  font-family:'Urbanist',sans-serif;font-weight:700;font-size:0.75rem;
  color:var(--ol-terracotta-dark);text-transform:uppercase;letter-spacing:0.05em;
  margin-bottom:var(--ol-space-2);
}


.ol-steps{padding:var(--ol-space-12) 0;}
.ol-steps__grid{
  container-type:inline-size;container-name:ol-steps;
  display:grid;grid-template-columns:1fr;gap:var(--ol-space-5);
}
.ol-step{
  padding:var(--ol-space-5);border-radius:var(--ol-radius-md);
  border:1px dashed var(--ol-line);
  transition:border-color 0.3s ease, background 0.3s ease;
}
.ol-step:hover{border-color:var(--ol-terracotta);background:rgba(193,97,60,0.05);}
.ol-step__num{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;
  background:var(--ol-ink);color:var(--ol-cream);
  font-family:'Urbanist',sans-serif;font-weight:800;margin-bottom:var(--ol-space-3);
}
.ol-step h3{font-size:1.1rem;margin-bottom:var(--ol-space-2);}
.ol-step p{color:var(--ol-ink-soft);font-size:0.92rem;}

@container ol-steps (min-width: 700px){
  .ol-steps__grid{grid-template-columns:repeat(4,1fr);}
}


.ol-formula{padding:var(--ol-space-12) 0;background:var(--ol-cream-dark);}
.ol-formula__grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:var(--ol-space-10);align-items:center;}
.ol-formula__image{display:flex;justify-content:center;}
.ol-polaroid--rotate-left{transform:rotate(-4deg);}
.ol-polaroid--rotate-right{transform:rotate(4deg);}
.ol-formula__image .ol-polaroid{width:100%;max-width:320px;height:340px;}
.ol-formula__box{
  background:var(--ol-white);border:1px solid var(--ol-line);
  border-radius:var(--ol-radius-md);padding:var(--ol-space-5);
  margin:var(--ol-space-5) 0;box-shadow:var(--ol-shadow-sm);
}
.ol-formula__eq{font-family:'Urbanist',sans-serif;font-weight:700;font-size:1.1rem;color:var(--ol-olive-dark);}


.ol-compare{padding:var(--ol-space-12) 0;}
.ol-compare__grid{
  container-type:inline-size;container-name:ol-compare;
  display:grid;grid-template-columns:1fr;gap:var(--ol-space-5);
}
.ol-compare__card{
  background:var(--ol-white);border-radius:var(--ol-radius-lg);
  padding:var(--ol-space-6);border:1px solid var(--ol-line);
  box-shadow:var(--ol-shadow-sm);
}
.ol-compare__card i{font-size:1.4rem;color:var(--ol-terracotta);margin-bottom:var(--ol-space-3);display:block;}
.ol-compare__card h3{font-size:1.1rem;margin-bottom:var(--ol-space-2);}
.ol-compare__card p{color:var(--ol-ink-soft);font-size:0.92rem;}
@container ol-compare (min-width: 700px){
  .ol-compare__grid{grid-template-columns:repeat(2,1fr);}
}
@container ol-compare (min-width: 1050px){
  .ol-compare__grid{grid-template-columns:repeat(4,1fr);}
}


.ol-tax{padding:var(--ol-space-12) 0;background:var(--ol-olive-dark);color:var(--ol-cream);}
.ol-tax .ol-section-title{color:var(--ol-cream);}
.ol-tax__grid{
  container-type:inline-size;container-name:ol-tax;
  display:grid;grid-template-columns:1fr;gap:var(--ol-space-8);
}
.ol-tax__content p{color:rgba(251,245,236,0.85);margin-bottom:var(--ol-space-4);}
.ol-tax__list{display:flex;flex-direction:column;gap:var(--ol-space-3);}
.ol-tax__item{
  display:flex;align-items:flex-start;gap:0.6rem;
  background:rgba(251,245,236,0.08);
  border:1px solid rgba(251,245,236,0.14);
  border-radius:var(--ol-radius-md);padding:var(--ol-space-4);
  backdrop-filter:blur(6px);
}
.ol-tax__item i{color:var(--ol-gold-light);margin-top:3px;}
@container ol-tax (min-width: 780px){
  .ol-tax__grid{grid-template-columns:1.2fr 1fr;}
}


.ol-faq{padding:var(--ol-space-12) 0;}
.ol-faq__list{display:flex;flex-direction:column;gap:var(--ol-space-3);max-width:760px;}
.ol-faq__item{border:1px solid var(--ol-line);border-radius:var(--ol-radius-md);overflow:hidden;background:var(--ol-white);}
.ol-faq__question{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  padding:var(--ol-space-5);text-align:left;font-family:'Urbanist',sans-serif;font-weight:700;font-size:1rem;
  transition:background 0.25s ease;
}
.ol-faq__question i{transition:transform 0.3s ease;color:var(--ol-terracotta);}
.ol-faq__item.is-open .ol-faq__question i{transform:rotate(45deg);}
.ol-faq__answer{
  max-height:0;overflow:hidden;transition:max-height 0.35s ease, padding 0.35s ease;padding:0 var(--ol-space-5);
}
.ol-faq__item.is-open .ol-faq__answer{max-height:220px;padding:0 var(--ol-space-5) var(--ol-space-5);}
.ol-faq__answer p{color:var(--ol-ink-soft);font-size:0.94rem;}


.ol-cta{padding:var(--ol-space-10) 0 var(--ol-space-12);}
.ol-cta__box{
  background:var(--ol-gradient-warm);
  border-radius:var(--ol-radius-xl);
  padding:var(--ol-space-8);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--ol-space-5);
  color:var(--ol-white);box-shadow:var(--ol-shadow-lg);
}
.ol-cta__box h2{color:var(--ol-white);font-size:clamp(1.4rem,1.1rem+1.4vw,1.9rem);margin-bottom:var(--ol-space-2);}
.ol-cta__box p{color:rgba(255,255,255,0.9);}
.ol-cta .ol-btn--primary{background:var(--ol-white);color:var(--ol-terracotta-dark);box-shadow:none;}
.ol-cta .ol-btn--primary:hover{background:var(--ol-ink);color:var(--ol-white);}


.ol-footer{background:var(--ol-ink);color:var(--ol-cream);padding-top:var(--ol-space-10);margin-top:auto;}
.ol-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--ol-space-8);padding-bottom:var(--ol-space-8);}
.ol-footer__brand p{color:rgba(251,245,236,0.7);font-size:0.9rem;margin-top:var(--ol-space-3);max-width:36ch;}
.ol-footer__col h4{color:var(--ol-cream);font-size:1rem;margin-bottom:var(--ol-space-4);}
.ol-footer__col a{display:block;color:rgba(251,245,236,0.75);font-size:0.9rem;margin-bottom:var(--ol-space-2);transition:color 0.25s ease;}
.ol-footer__col a:hover{color:var(--ol-gold-light);}
.ol-footer__col p{color:rgba(251,245,236,0.75);font-size:0.9rem;margin-bottom:var(--ol-space-2);display:flex;gap:0.5rem;}
.ol-footer__bottom{border-top:1px solid rgba(251,245,236,0.12);padding:var(--ol-space-5) 0;font-size:0.82rem;color:rgba(251,245,236,0.55);}

html, body{min-height:100%;}
body{display:flex;flex-direction:column;}
main{flex:1;}


.ol-page-hero{padding:calc(var(--ol-space-16)) 0 var(--ol-space-8);background:var(--ol-gradient-soft);}
.ol-page-hero--legal{padding-bottom:var(--ol-space-6);}
.ol-page-hero__title{font-size:clamp(1.8rem,1.3rem+2.4vw,3rem);margin-bottom:var(--ol-space-4);}
.ol-page-hero__inner{max-width:820px;}


.ol-about-story{padding:var(--ol-space-12) 0;}
.ol-about-story__grid{display:grid;grid-template-columns:0.8fr 1.2fr;gap:var(--ol-space-10);align-items:center;}
.ol-about-story .ol-polaroid{width:100%;max-width:340px;height:320px;justify-self:center;}
.ol-about-story__text p{color:var(--ol-ink-soft);margin-bottom:var(--ol-space-4);}

.ol-about-team{padding:var(--ol-space-12) 0;background:var(--ol-cream-dark);}
.ol-about-team__grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:var(--ol-space-10);align-items:center;}
.ol-about-team .ol-polaroid{width:100%;max-width:320px;height:300px;justify-self:center;}
.ol-about-team__text p{color:var(--ol-ink-soft);margin-bottom:var(--ol-space-4);}


.ol-owners{padding:var(--ol-space-12) 0;}
.ol-owners__grid{display:grid;grid-template-columns:0.8fr 1.2fr;gap:var(--ol-space-10);align-items:center;}
.ol-owners .ol-polaroid{width:100%;max-width:320px;height:320px;justify-self:center;}
.ol-owners__text p{color:var(--ol-ink-soft);margin-bottom:var(--ol-space-4);}


.ol-video-grid{padding:var(--ol-space-12) 0;}


.ol-contact{padding:var(--ol-space-10) 0 var(--ol-space-12);}
.ol-contact__grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:var(--ol-space-8);align-items:start;}
.ol-contact__info{display:flex;flex-direction:column;gap:var(--ol-space-4);}
.ol-contact__card{
  display:flex;gap:var(--ol-space-4);background:var(--ol-white);
  border:1px solid var(--ol-line);border-radius:var(--ol-radius-md);
  padding:var(--ol-space-5);box-shadow:var(--ol-shadow-sm);
}
.ol-contact__card i{font-size:1.3rem;color:var(--ol-terracotta);margin-top:2px;}
.ol-contact__card h3{font-size:1rem;margin-bottom:var(--ol-space-2);}
.ol-contact__card p{color:var(--ol-ink-soft);font-size:0.92rem;}
.ol-contact__card a{color:var(--ol-terracotta-dark);font-weight:600;}

.ol-contact__form-wrap{background:var(--ol-white);border-radius:var(--ol-radius-lg);padding:var(--ol-space-8);box-shadow:var(--ol-shadow-md);border:1px solid var(--ol-line);}
.ol-wizard__steps{display:flex;gap:var(--ol-space-3);margin-bottom:var(--ol-space-6);}
.ol-wizard__dot{
  width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--ol-cream-dark);color:var(--ol-ink-soft);font-weight:700;font-size:0.9rem;
  transition:background 0.3s ease, color 0.3s ease;
}
.ol-wizard__dot.is-active{background:var(--ol-gradient-warm);color:var(--ol-white);}
.ol-wizard__panel{display:none;animation:ol-fade-in 0.4s ease;}
.ol-wizard__panel.is-active{display:block;}
@keyframes ol-fade-in{from{opacity:0;transform:translateX(12px);}to{opacity:1;transform:translateX(0);}}
.ol-wizard h3{margin-bottom:var(--ol-space-5);font-size:1.2rem;}
.ol-form-group{margin-bottom:var(--ol-space-5);}
.ol-form-group label{display:block;font-weight:600;font-size:0.9rem;margin-bottom:var(--ol-space-2);}
.ol-form-group input, .ol-form-group select, .ol-form-group textarea{
  width:100%;padding:0.8rem 1rem;border-radius:var(--ol-radius-sm);
  border:1.5px solid var(--ol-line);background:var(--ol-cream);
  font-family:'DM Sans',sans-serif;font-size:0.95rem;color:var(--ol-ink);
  transition:border-color 0.25s ease, box-shadow 0.25s ease;
}
.ol-form-group input:focus, .ol-form-group select:focus, .ol-form-group textarea:focus{
  outline:none;border-color:var(--ol-terracotta);box-shadow:0 0 0 3px rgba(193,97,60,0.15);
}
.ol-form-group--checkbox{display:flex;align-items:flex-start;}
.ol-checkbox{display:flex;gap:0.6rem;align-items:flex-start;font-size:0.88rem;color:var(--ol-ink-soft);cursor:pointer;}
.ol-checkbox input{width:20px;height:20px;flex-shrink:0;margin-top:2px;}
.ol-checkbox a{color:var(--ol-terracotta-dark);font-weight:600;}
.ol-form-nav{display:flex;justify-content:space-between;gap:var(--ol-space-3);margin-top:var(--ol-space-4);}

.ol-map{padding-bottom:var(--ol-space-12);}
.ol-map__frame{border-radius:var(--ol-radius-lg);overflow:hidden;box-shadow:var(--ol-shadow-md);border:1px solid var(--ol-line);}


.ol-thanks{padding:calc(var(--ol-space-16)) 0 var(--ol-space-12);}
.ol-thanks__box{max-width:780px;margin:0 auto;text-align:center;}
.ol-thanks__icon{
  width:76px;height:76px;border-radius:50%;background:var(--ol-gradient-warm);
  display:flex;align-items:center;justify-content:center;color:var(--ol-white);font-size:2rem;
  margin:0 auto var(--ol-space-5);box-shadow:var(--ol-shadow-md);
}
.ol-thanks h1{font-size:clamp(1.7rem,1.3rem+2vw,2.4rem);margin-bottom:var(--ol-space-4);}
.ol-thanks__next{margin:var(--ol-space-8) 0;text-align:left;}
.ol-thanks__next h2{font-size:1.3rem;margin-bottom:var(--ol-space-5);text-align:center;}
.ol-thanks__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ol-space-5);margin-bottom:var(--ol-space-8);}
.ol-thanks__item{background:var(--ol-white);border:1px solid var(--ol-line);border-radius:var(--ol-radius-md);padding:var(--ol-space-5);box-shadow:var(--ol-shadow-sm);}
.ol-thanks__item i{font-size:1.4rem;color:var(--ol-terracotta);margin-bottom:var(--ol-space-3);display:block;}
.ol-thanks__item h3{font-size:1rem;margin-bottom:var(--ol-space-2);}
.ol-thanks__item p{color:var(--ol-ink-soft);font-size:0.9rem;}


.ol-legal{padding:var(--ol-space-10) 0 var(--ol-space-12);}
.ol-legal__body{max-width:820px;}
.ol-legal__intro{font-size:1.02rem;color:var(--ol-ink-soft);margin-bottom:var(--ol-space-8);}
.ol-legal__section{margin-bottom:var(--ol-space-8);padding-bottom:var(--ol-space-6);border-bottom:1px solid var(--ol-line);}
.ol-legal__section:last-child{border-bottom:none;}
.ol-legal__badge{
  display:inline-block;font-family:'Urbanist',sans-serif;font-weight:800;font-size:1.05rem;
  color:var(--ol-terracotta-dark);margin-bottom:var(--ol-space-2);
}
.ol-legal__summary{
  background:var(--ol-cream-dark);border-left:4px solid var(--ol-terracotta);
  border-radius:var(--ol-radius-sm);padding:var(--ol-space-4);font-weight:600;
  margin-bottom:var(--ol-space-4);color:var(--ol-ink);
}
.ol-legal__section p{color:var(--ol-ink-soft);}
.ol-legal--alt .ol-legal__badge{font-size:1rem;}
.ol-legal--unnumbered .ol-legal__badge{text-transform:uppercase;letter-spacing:0.04em;font-size:0.95rem;}
.ol-legal__table{border:1px solid var(--ol-line);border-radius:var(--ol-radius-md);overflow:hidden;}
.ol-legal__row{display:grid;grid-template-columns:1fr 1fr 2fr 1fr;gap:var(--ol-space-2);padding:var(--ol-space-3) var(--ol-space-4);font-size:0.86rem;}
.ol-legal__row:nth-child(even){background:var(--ol-cream);}
.ol-legal__row--head{background:var(--ol-ink);color:var(--ol-cream);font-weight:700;}


.ol-cookie{
  position:fixed;left:0;right:0;bottom:0;z-index:300;
  display:none;
  background:var(--ol-white);
  border-top:1px solid var(--ol-line);
  box-shadow:0 -12px 30px rgba(44,32,22,0.14);
  padding:var(--ol-space-5) var(--ol-space-5);
  gap:var(--ol-space-6);
  align-items:center;
}
.ol-cookie.is-visible{display:flex;}
.ol-cookie__left{flex:1.2;}
.ol-cookie__left h4{font-size:1rem;margin-bottom:var(--ol-space-2);}
.ol-cookie__left p{font-size:0.85rem;color:var(--ol-ink-soft);}
.ol-cookie__left a{color:var(--ol-terracotta-dark);font-weight:600;}
.ol-cookie__right{flex:1;display:flex;flex-direction:column;gap:var(--ol-space-3);}
.ol-cookie__categories{display:flex;gap:var(--ol-space-4);flex-wrap:wrap;}
.ol-cookie__cat{display:flex;align-items:center;gap:0.4rem;font-size:0.85rem;color:var(--ol-ink-soft);}
.ol-cookie__cat input{width:18px;height:18px;}
.ol-cookie__actions{display:flex;gap:var(--ol-space-3);}

@media (max-width:860px){
  .ol-cookie{flex-direction:column;align-items:stretch;}
}


@media (max-width:1080px){
  .ol-hero__grid{grid-template-columns:1fr;}
  .ol-hero__images{min-height:380px;margin-top:var(--ol-space-6);}
  .ol-footer__grid{grid-template-columns:1fr 1fr;}
  .ol-formula__grid{grid-template-columns:1fr;}
  .ol-about-story__grid, .ol-about-team__grid, .ol-owners__grid{grid-template-columns:1fr;}
  .ol-about-team__grid{direction:ltr;}
  .ol-contact__grid{grid-template-columns:1fr;}
}

@media (max-width:760px){
  .ol-nav__links{display:none;}
  .ol-nav__actions{display:none;}
  .ol-nav__toggle{display:flex;}
  .ol-hero{padding-top:calc(var(--ol-space-12));}
  .ol-values__grid{grid-template-columns:1fr;}
  .ol-thanks__grid{grid-template-columns:1fr;}
  .ol-footer__grid{grid-template-columns:1fr;}
  .ol-cta__box{flex-direction:column;align-items:flex-start;}
  .ol-legal__row{grid-template-columns:1fr;gap:0.2rem;}
  .ol-legal__row--head{display:none;}
}

@media (max-width:520px){
  .ol-hero__images .ol-polaroid--a{width:180px;height:220px;left:2%;}
  .ol-hero__images .ol-polaroid--b{width:150px;height:190px;left:38%;top:42%;}
  .ol-hero__images .ol-polaroid--c{width:130px;height:160px;}
}