/* cacaOh! – central design settings. Dreamweaver friendly. */
:root{--ink:#2e2624;--muted:#766e68;--cream:#faf7f2;--paper:#fffdf9;--cocoa:#503529;--gold:#bd9864;--line:#e9e0d7;--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit}img{display:block;max-width:100%}.container{width:min(1200px,calc(100% - 44px));margin:auto}.topline{background:var(--cocoa);color:#fff;text-align:center;font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:7px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;gap:24px;min-height:86px}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;min-width:170px}.brand img{width:168px;max-height:66px;object-fit:contain}.nav{display:flex;gap:20px;align-items:center;flex:1;justify-content:center}.nav a,.nav summary{text-decoration:none;font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:650;cursor:pointer;white-space:nowrap}.nav a:hover,.nav summary:hover{color:#9a6c40}.dropdown{position:relative}.dropdown summary{list-style:none}.dropdown summary::-webkit-details-marker{display:none}.dropdown-menu{position:absolute;top:100%;left:0;min-width:255px;padding:12px;background:#fff;box-shadow:0 15px 40px #30251d25;display:grid;gap:0;border:1px solid var(--line)}.dropdown-menu a{padding:9px 11px;white-space:normal}.lang{font-size:12px;white-space:nowrap}.lang a{text-decoration:none}.lang span{color:#aaa;margin:0 5px}.lang .inactive{color:#a39b92;cursor:default}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:#f1e9df}.hero-content{padding:clamp(36px,7vw,110px);align-self:center}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:#956c45;font-weight:700}.hero h1,.page-hero h1{font-family:var(--serif);font-size:clamp(40px,5vw,75px);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:17px 0 22px}.hero p,.page-hero p{font-size:17px;max-width:560px;color:#65594f}.hero-image img{width:100%;height:100%;object-fit:cover;min-height:480px}.btn{display:inline-block;padding:13px 24px;border:1px solid var(--cocoa);background:var(--cocoa);color:#fff;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin:15px 9px 0 0}.btn.outline{background:transparent;color:var(--cocoa)}section{padding:78px 0}.section-heading{text-align:center;max-width:720px;margin:0 auto 40px}.section-heading h2,h2{font-family:var(--serif);font-size:clamp(31px,3.5vw,49px);font-weight:400;line-height:1.2;margin:12px 0}.section-heading p,.lead{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:var(--paper);border:1px solid var(--line);text-decoration:none;display:block}.card img{width:100%;aspect-ratio:4/3;object-fit:cover}.card-body{padding:23px}.card h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:0 0 7px}.card p{color:var(--muted);font-size:14px;margin:0}.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-top:15px;display:inline-block}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw}.split img{width:100%;aspect-ratio:5/4;object-fit:cover}.split p{color:var(--muted)}.soft{background:#efe8de}.page-hero{display:grid;grid-template-columns:1fr 1fr;background:#f1e9df;min-height:440px}.page-hero .hero-content{padding:clamp(35px,6vw,95px)}.page-hero img{width:100%;height:100%;object-fit:cover;min-height:420px}.intro{max-width:850px;margin:auto;text-align:center}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature{border-top:2px solid var(--gold);padding:20px 5px}.feature h3{font-family:var(--serif);font-size:24px;font-weight:400}.feature p{color:var(--muted)}.cta{text-align:center;background:var(--cocoa);color:#fff}.cta p{color:#e8dcd1}.cta .btn{background:#fff;color:var(--cocoa);border-color:#fff}.site-footer{background:#211b19;color:#e9dfd6;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.site-footer a{display:block;text-decoration:none;font-size:13px;margin:6px 0}.site-footer p{color:#c6b9ae;font-size:13px}.footer-bottom{border-top:1px solid #51433b;margin-top:35px;padding-top:16px;font-size:12px;color:#c6b9ae}.legal{max-width:850px;margin:auto}.legal h2{font-size:27px;margin-top:36px}.note{background:#fff3df;border-left:4px solid #b78c4d;padding:18px;margin:22px 0}.placeholder-note{font-size:12px;color:#8b7e70}.breadcrumbs{padding:15px 0;font-size:12px;color:#867a70}.breadcrumbs a{text-decoration:none}@media(max-width:980px){.header-inner{flex-wrap:wrap;padding:12px 0}.menu-toggle{display:block;margin-left:auto;border:1px solid var(--line);padding:9px 14px;background:transparent;font:inherit}.nav{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:15px;padding:12px 0}.nav.open{display:flex}.dropdown-menu{position:static;box-shadow:none;margin-top:8px}.lang{margin-left:auto}}@media(max-width:700px){.hero,.page-hero,.split{grid-template-columns:1fr}.hero-image{order:-1}.hero-image img,.page-hero img{min-height:260px;max-height:360px}.hero-content,.page-hero .hero-content{padding:35px 24px}.cards,.feature-grid,.footer-grid{grid-template-columns:1fr}section{padding:50px 0}.hero h1,.page-hero h1{font-size:42px}}

/* cacaOh! identity and social additions */
.brand img{width:168px;max-height:76px;object-fit:contain;background:#181211;border-radius:3px;padding:5px}
.social-links{display:flex;align-items:center;justify-content:center;gap:16px;padding:18px 12px;flex-wrap:wrap}.social-links span{font-size:13px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid currentColor;border-radius:50%;padding:8px}.social-links img{width:19px;height:19px;object-fit:contain}.cocoa-horizons-section{padding-top:55px;padding-bottom:60px}.cocoa-horizons-layout{display:grid;grid-template-columns:1.4fr .8fr;gap:40px;align-items:center}.cocoa-horizons-layout figure{margin:0;background:white;padding:18px}.cocoa-horizons-layout figure img{width:100%;height:auto}.cocoa-horizons-layout figcaption{font-size:11px;color:#75685f;margin-top:12px}@media(max-width:760px){.cocoa-horizons-layout{grid-template-columns:1fr}}

/* VISUAL REFERENCE UPDATE: dark editorial header, cream background, amber accents, rounded imagery. */
:root{--ink:#241c18;--muted:#675a50;--cream:#f7f3ec;--paper:#fffaf3;--cocoa:#211915;--gold:#e8ae59;--line:#dfd5c9;--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif}
body{line-height:1.55}.container{width:min(1280px,calc(100% - 56px))}.topline{background:#15100e;color:#d4b28a;letter-spacing:.19em;padding:5px;font-size:10px}.site-header{background:#15100e;color:white;border:0;position:relative}.header-inner{min-height:83px;gap:24px}.brand{min-width:158px}.brand img{width:164px;max-height:67px;background:transparent;padding:0;border-radius:0}.nav{justify-content:flex-end;gap:clamp(11px,1.55vw,24px)}.nav a,.nav summary{font-size:12px;letter-spacing:0;text-transform:none;font-weight:650}.nav a:hover,.nav summary:hover{color:var(--gold)}.dropdown-menu{background:#241a15;border-color:#4b382b;box-shadow:0 18px 40px #0005}.dropdown-menu a{color:#fff}.lang{color:white}.lang .inactive{color:#8b817b}.hero{position:relative;display:flex;align-items:center;min-height:545px;background:#201713;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;z-index:0}.hero-image img{width:100%;height:100%;min-height:545px;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,12,10,.96) 0%,rgba(18,12,10,.84) 42%,rgba(18,12,10,.12) 100%);pointer-events:none}.hero-content{position:relative;z-index:1;width:min(1280px,calc(100% - 56px));margin:auto;padding:75px 0}.hero h1{font-size:clamp(47px,6vw,83px);line-height:1.02;max-width:710px;margin:18px 0;color:white}.hero p{color:#eee4dc;max-width:540px;font-size:17px}.eyebrow{color:#b98035;font-size:12px}.hero .eyebrow,.cta .eyebrow{color:var(--gold)}.btn{background:var(--gold);border-color:var(--gold);color:#1b1411;border-radius:30px;text-transform:none;letter-spacing:0;font-size:13px;padding:13px 24px;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.outline{background:transparent;color:var(--cocoa);border-color:var(--cocoa)}.hero .btn.outline,.page-hero .btn.outline{color:white;border-color:var(--gold)}section{padding:70px 0}.section-heading{text-align:left;max-width:none;margin-bottom:28px}.section-heading h2{font-size:clamp(34px,4vw,51px)}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:transparent;border:0}.card img{border-radius:12px;aspect-ratio:1.3;transition:transform .3s}.card:hover img{transform:scale(1.025)}.card-body{padding:14px 0 12px}.card h3{font:700 18px/1.3 var(--sans)}.card p{font-size:13px}.text-link{color:#8e5b23;font-size:12px;text-transform:none;letter-spacing:0}.soft{background:#eee6da}.split img,.page-hero img{border-radius:10px}.page-hero{background:#241a15;color:#fff;min-height:430px}.page-hero h1{color:white}.page-hero p{color:#e6d9ce}.page-hero img{border-radius:0}.page-hero .btn{background:var(--gold);color:#1b1411}.feature{border-top:2px solid var(--gold)}.cta{background:#251a15}.cta .btn{background:var(--gold);color:#1b1411;border-color:var(--gold)}.site-footer{background:#130f0d}.social-links a{border-color:#74655b}.social-links a:hover{border-color:var(--gold)}.benefit-strip{background:#211915;color:#fff;padding:24px 0}.benefit-strip .container{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.benefit-item{display:flex;gap:12px;align-items:center;border-right:1px solid #665040;padding:0 22px;font-size:13px}.benefit-item:first-child{padding-left:0}.benefit-item:last-child{border:0}.benefit-item b{font-size:24px;color:var(--gold);font-weight:400}.hero .placeholder-note{color:#ddd}.breadcrumbs{color:#867a70}@media(max-width:1050px){.nav{gap:12px}.nav a,.nav summary{font-size:11px}}@media(max-width:980px){.site-header{position:relative}.menu-toggle{display:block;color:white;border-color:#665040}.nav{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:15px}.nav.open{display:flex}.dropdown-menu{position:static}.benefit-strip .container{grid-template-columns:repeat(2,1fr);gap:18px}.benefit-item:nth-child(2){border:0}}@media(max-width:700px){.container{width:min(100% - 36px,1280px)}.hero{min-height:540px;display:flex}.hero-image{order:0}.hero-image img{height:100%;max-height:none;min-height:540px}.hero:after{background:linear-gradient(90deg,rgba(18,12,10,.92),rgba(18,12,10,.65))}.hero-content{padding:55px 0;width:calc(100% - 40px)}.hero h1{font-size:46px}.page-hero{grid-template-columns:1fr}.page-hero img{max-height:300px}.cards{grid-template-columns:1fr}.benefit-strip .container{grid-template-columns:1fr 1fr;gap:16px}.benefit-item{padding:0;border:0;font-size:12px}.section-heading{text-align:left}}


/* cacaOh! Cookie Banner */

.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  background: #ffffff;
  color: #30251e;
  border-top: 1px solid #ded8d2;
  box-shadow: 0 -4px 25px rgba(0, 0, 0, 0.12);
  padding: 22px 20px;
  font-family: inherit;
}

.cookie-banner-content {
  max-width: 1150px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.cookie-banner h2 {
  font-size: 20px;
  margin: 0 0 8px;
  color: #30251e;
}

.cookie-banner p {
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  max-width: 680px;
}

.cookie-banner a {
  color: #68432e;
  text-decoration: underline;
}

.cookie-banner-actions {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}

.cookie-banner-actions button {
  padding: 12px 18px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
}

.cookie-reject {
  background: #ffffff;
  color: #30251e;
  border: 1px solid #6b625c;
}

.cookie-accept {
  background: #493022;
  color: #ffffff;
  border: 1px solid #493022;
}

@media (max-width: 768px) {
  .cookie-banner-content {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .cookie-banner-actions {
    flex-direction: column;
  }

  .cookie-banner-actions button {
    width: 100%;
  }
}
