:root {
  --cream:#f7f3ec; --white:#fcfbf8; --taupe:#a99c92; --brown:#704512;
  --ink:#624a35; --muted:#776a5e; --line:#d9cec1;
  font-family:Montserrat,Arial,sans-serif; color:var(--ink); background:var(--white); font-synthesis:none;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; }
a { color:inherit; text-underline-offset:5px; }
button,input { font:inherit; }
button,a,input { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,input:focus-visible { outline:2px solid var(--brown); outline-offset:5px; }
button { cursor:pointer; }
.skip { position:absolute; left:12px; top:-70px; background:var(--cream); padding:12px; z-index:10; }
.skip:focus { top:12px; }
.header { height:138px; display:flex; align-items:center; padding:18px 5.2%; gap:36px; border-bottom:1px solid var(--line); }
.brand { display:flex; flex-direction:column; align-items:center; gap:7px; flex-shrink:0; text-decoration:none; }
.brand-tagline { font-size:9px; line-height:1.4; letter-spacing:.08em; }
.brand img { display:block; width:85px; height:auto; }
.header-contact { margin-left:auto; font-size:11px; text-decoration:none; display:flex; align-items:center; gap:20px; }
.header-contact span { font-size:22px; }
.hero { display:grid; grid-template-columns:1fr 1fr; min-height:max(680px,calc(100svh - 138px)); max-width:1800px; margin:auto; }
.introduction { align-self:center; padding:64px 11% 54px 10.4%; }
.eyebrow { font-size:9px; font-weight:500; letter-spacing:.19em; line-height:1.7; margin:0 0 24px; display:flex; align-items:center; gap:10px; }
.status-dot { width:6px; height:6px; border-radius:50%; background:var(--brown); flex:none; }
h1 { font-weight:300; font-size:clamp(38px,3.75vw,62px); line-height:1.14; letter-spacing:-.045em; margin:0 0 25px; }
h1 span { color:var(--brown); font-weight:400; }
.intro-copy { font-size:14px; line-height:1.8; max-width:435px; margin:0 0 13px; }
.detail-copy { font-size:12px; color:var(--muted); line-height:1.85; max-width:425px; margin:0; }
.editorial { position:relative; align-self:center; aspect-ratio:3 / 2; margin:40px 8% 40px 0; overflow:hidden; background:var(--cream); }
.editorial>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.image-note { position:absolute; bottom:24px; right:100px; font-size:8px; letter-spacing:.18em; color:#5c4431; background:#f7f3ecd9; padding:9px 12px; }
.primary { background:var(--brown); color:var(--white); width:100%; display:flex; justify-content:space-between; align-items:center; gap:12px; text-align:left; border:1px solid var(--brown); padding:17px 20px; margin-top:24px; font-size:12px; min-height:56px; transition:background .2s; text-decoration:none; }
.primary:hover { background:#58360e; }
.primary span { font-size:19px; line-height:1; }
.hero-cta { max-width:310px; margin-top:30px; }
.hero-benefit { font-size:10px; color:var(--muted); line-height:1.6; margin:11px 0 0; }
.discover { display:flex; align-items:center; gap:22px; width:fit-content; min-height:44px; margin-top:30px; font-size:10px; text-decoration:none; }
.discover span { font-size:22px; }
.brand-world { background:var(--cream); border-top:1px solid var(--line); padding:74px 7% 82px; min-height:100svh; scroll-margin-top:20px; }
.world-heading { text-align:center; margin:0 auto 48px; }
.world-heading .eyebrow { justify-content:center; margin-bottom:15px; }
.world-heading h2 { font-size:clamp(30px,3vw,44px); font-weight:300; letter-spacing:-.04em; line-height:1.2; margin:0 0 18px; }
.world-heading>p:last-child { font-size:12px; line-height:1.9; margin:0; color:var(--muted); }
.world-grid { max-width:1190px; margin:auto; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:8%; }
.brand-image { margin:0 0 25px; }
.brand-image img { width:100%; height:260px; display:block; object-fit:cover; object-position:center 56%; }
.brand-image figcaption { font-size:8px; letter-spacing:.16em; color:var(--muted); margin-top:12px; }
.brand-story h3 { font-weight:400; font-size:22px; line-height:1.4; letter-spacing:-.025em; margin:0 0 14px; }
.brand-story>p { font-size:12px; line-height:1.9; color:var(--muted); max-width:465px; margin:0 0 12px; }
.community { background:var(--white); padding:39px 36px 33px; border:1px solid var(--line); scroll-margin-top:35px; }
.community .eyebrow { margin-bottom:15px; font-size:8px; }
.community h2 { font-size:27px; line-height:1.25; font-weight:400; letter-spacing:-.035em; margin:0 0 14px; }
.community>p:not(.eyebrow) { font-size:12px; line-height:1.8; margin:0 0 24px; color:var(--muted); }
.privacy-link { border:0; background:transparent; color:var(--muted); font-size:9px; padding:7px 0; text-decoration:underline; text-underline-offset:3px; min-height:36px; }
.universe { text-align:center; padding:40px 5%; border-top:1px solid var(--line); }
.universe h2 { font-size:20px; font-weight:300; letter-spacing:-.025em; margin:0 0 25px; }
.universe ul { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px 0; list-style:none; margin:0; padding:0; }
.universe li { font-size:10px; line-height:1.4; letter-spacing:.025em; padding:0 22px; border-right:1px solid var(--line); }
.universe li:last-child { border:0; }
.footer { padding:25px 110px 25px 5.2%; display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:9px; color:var(--muted); border-top:1px solid var(--line); }
.footer p { margin:0; line-height:1.7; }
.footer p span { margin:0 10px; }
.footer a { text-decoration:none; line-height:1.7; }
.footer a span { font-size:16px; margin-left:8px; }
.arrow-icon { display:none; flex-shrink:0; }
dialog { width:min(560px,calc(100% - 32px)); max-height:85vh; overflow:auto; background:var(--white); border:1px solid var(--line); padding:48px 35px; color:var(--ink); }
dialog::backdrop { background:#33271fa6; }
dialog h2 { font-size:24px; font-weight:400; line-height:1.3; }
dialog p:not(.eyebrow) { font-size:12px; line-height:1.9; }
dialog a { overflow-wrap:anywhere; }
.close-dialog { position:absolute; right:10px; top:6px; padding:8px 14px; border:0; background:none; color:var(--ink); font-size:28px; }
@media(min-width:1600px) {
  .intro-copy { font-size:16px; }
  .detail-copy { font-size:14px; }
}
@media(max-width:1000px) and (min-width:701px) {
  .introduction { padding-inline:8%; }
  .eyebrow { font-size:8px; letter-spacing:.12em; }
  h1 { font-size:39px; }
  .world-grid { gap:5%; }
  .brand-world { padding-inline:5%; }
  .community { padding:30px 24px; }
  .universe li { padding-inline:14px; }
}
@media(max-width:700px) {
  .arrow-text { display:none; }
  .arrow-icon { display:block; }
  .footer a .arrow-icon { display:inline-block; width:16px; height:16px; margin-left:8px; vertical-align:middle; }
  .header { height:112px; padding:15px 6%; gap:15px; }
  .brand img { width:66px; }
  .brand-tagline { font-size:8px; letter-spacing:.04em; }
  .header-contact { font-size:10px; gap:14px; }
  .hero { grid-template-columns:1fr; min-height:auto; }
  .introduction { padding:40px 7% 32px; }
  .eyebrow { font-size:8px; letter-spacing:.14em; margin-bottom:21px; }
  h1 { font-size:clamp(37px,10vw,57px); line-height:1.12; margin-bottom:23px; }
  .intro-copy { font-size:13px; max-width:100%; }
  .detail-copy { font-size:11px; max-width:100%; }
  .hero-cta { max-width:100%; }
  .discover { margin-top:18px; }
  .editorial { height:auto; margin:0 7% 38px; }
  .image-note { font-size:6px; bottom:14px; right:80px; padding:6px 9px; }
  .brand-world { padding:49px 7%; min-height:auto; }
  .world-heading { margin-bottom:32px; text-align:left; }
  .world-heading .eyebrow { justify-content:flex-start; }
  .world-heading h2 { font-size:34px; }
  .world-heading>p:last-child { font-size:12px; }
  .world-heading br { display:none; }
  .world-grid { grid-template-columns:1fr; gap:30px; }
  .brand-image img { height:260px; }
  .brand-story h3 { font-size:22px; }
  .community { padding:28px 22px 24px; }
  .community h2 { font-size:26px; }
  .community .eyebrow { font-size:7px; letter-spacing:.12em; }
  .primary { font-size:12px; min-height:56px; }
  .privacy-link { font-size:10px; min-height:38px; }
  .universe { padding:31px 6%; }
  .universe h2 { font-size:20px; margin-bottom:22px; }
  .universe ul { gap:15px 0; }
  .universe li { padding:0 12px; font-size:9px; }
  .footer { padding:25px 7% 100px; flex-direction:column; align-items:flex-start; gap:12px; font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  * { transition:none!important; }
}

.group-cta { line-height:1.6; }
.community>p.group-note { font-size:10px; line-height:1.8; margin:15px 0 8px; }
.whatsapp-float { position:fixed; right:24px; bottom:24px; right:max(24px,env(safe-area-inset-right)); bottom:max(24px,env(safe-area-inset-bottom)); width:58px; height:58px; display:flex; align-items:center; justify-content:center; background:var(--brown); color:var(--white); border:1px solid var(--white); border-radius:50%; box-shadow:0 4px 18px #49301929; z-index:20; text-decoration:none; transition:background .2s; }
.whatsapp-float:hover { background:#58360e; }
.whatsapp-tooltip { position:absolute; right:70px; white-space:nowrap; background:var(--white); border:1px solid var(--line); color:var(--ink); font-size:11px; padding:11px 14px; opacity:0; visibility:hidden; pointer-events:none; }
.whatsapp-float:hover .whatsapp-tooltip,.whatsapp-float:focus-visible .whatsapp-tooltip { opacity:1; visibility:visible; }
@media(max-width:700px) {
  .whatsapp-float { width:54px; height:54px; right:max(16px,env(safe-area-inset-right)); bottom:max(16px,env(safe-area-inset-bottom)); }
  .group-cta { font-size:11px; padding-inline:14px; }
}
@media(prefers-reduced-motion:reduce) { .whatsapp-float { transition:none; } }

.group-benefits { list-style:none; margin:0 0 28px; padding:0; }
.group-benefits li { display:flex; align-items:center; gap:12px; padding:13px 0; border-bottom:1px solid var(--line); font-size:11px; line-height:1.6; }
.group-benefits li::before { content:""; display:block; width:5px; height:5px; flex:none; border-radius:50%; background:var(--taupe); }
