/* ORRA — Women's Kite Camp.
   Bone brand system, composed like the Private Kite Expedition deck:
   full-bleed photography, solid colour panels, type at scale. No mauve.  */
:root{
  --bone:#F1E7D7; --paper:#F7F2E9; --espresso:#261B16; --ink:#171716;
  --brass:#B78B45; --brass-deep:#7F5F29; --brass-lt:#D8B477;
  --mineral:#718894; --mineral-deep:#536975;
  --olive:#666451; --travertine:#B29A7D; --limestone:#D8C4AA; --cacao:#49372D;
  --rule:rgba(178,154,125,.55); --rule-soft:rgba(178,154,125,.3);
  --rule-dk:rgba(183,139,69,.34);
}
@page{ size:1280px 720px; margin:0; }
*{ box-sizing:border-box; margin:0; padding:0; }
html,body{ background:var(--paper); }
body{ font-family:'Montserrat',system-ui,sans-serif; color:var(--cacao);
      -webkit-print-color-adjust:exact; print-color-adjust:exact; }

.s{ position:relative; width:1280px; height:720px; background:var(--paper);
    overflow:hidden; page-break-after:always; }
.s:last-child{ page-break-after:auto; }
.s.bone{ background:var(--bone); }
.s.dark{ background:var(--espresso); }
.s.stone{ background:var(--limestone); }

/* the content frame inside a slide */
.fr{ position:relative; z-index:3; height:100%; padding:60px 74px 50px;
     display:flex; flex-direction:column; }
.fr.tight{ padding:56px 64px 46px; }

/* full-bleed photography */
.bg{ position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.sc{ position:absolute; inset:0; z-index:1; }
/* scrims */
.sc.l{ background:linear-gradient(95deg,rgba(38,27,22,.93) 0%,rgba(38,27,22,.84) 38%,rgba(38,27,22,.30) 70%,rgba(38,27,22,.10) 100%); }
.sc.b{ background:linear-gradient(180deg,rgba(38,27,22,.18) 0%,rgba(38,27,22,.46) 48%,rgba(38,27,22,.93) 100%); }
.sc.full{ background:rgba(38,27,22,.80); }
.sc.soft{ background:linear-gradient(180deg,rgba(38,27,22,.30) 0%,rgba(38,27,22,.62) 100%); }

/* split halves */
.split{ position:absolute; inset:0; display:flex; z-index:2; }
.half{ position:relative; }
.photo{ background-size:cover; background-position:center; }

/* ── type ───────────────────────────────── */
h1,h2,h3,.ttl,.stat,.card .t,.card .n,.cov .v{ font-family:'Cormorant Garamond',Georgia,serif; }
.eyebrow{ font-size:10px; font-weight:500; letter-spacing:.3em; text-transform:uppercase; color:var(--brass-deep); }
h1{ font-size:74px; font-weight:300; line-height:1.02; letter-spacing:.008em; color:var(--espresso); }
h2{ font-size:50px; font-weight:300; line-height:1.06; letter-spacing:.015em; color:var(--espresso); }
h3{ font-size:17px; font-weight:500; letter-spacing:.13em; text-transform:uppercase; color:var(--espresso); }
p{ font-size:14.5px; font-weight:300; line-height:1.78; color:var(--cacao); }
p strong,li strong{ color:var(--espresso); font-weight:500; }
.lead{ font-size:19px; font-weight:300; line-height:1.64; color:var(--espresso); }
.stat{ font-size:126px; font-weight:300; line-height:1; color:var(--brass-lt); }

/* on dark */
.on-dark .eyebrow,.dark .eyebrow{ color:var(--brass-lt); }
.on-dark h1,.on-dark h2,.dark h1,.dark h2{ color:var(--bone); }
.on-dark h3,.dark h3{ color:var(--bone); }
.on-dark p,.dark p{ color:rgba(241,231,215,.84); }
.on-dark p strong,.dark p strong,.on-dark li strong,.dark li strong{ color:#fff; }
.on-dark .lead,.dark .lead{ color:var(--bone); }
.on-dark li,.dark li{ color:rgba(241,231,215,.84); }
.on-dark td,.dark td{ color:rgba(241,231,215,.84); border-color:var(--rule-dk); }

/* rules */
.hr{ width:60px; height:2px; background:var(--brass); }
.drule{ display:flex; align-items:center; gap:10px; }
.drule .l{ flex:1; height:1px; background:var(--rule); }
.on-dark .drule .l,.dark .drule .l{ background:var(--rule-dk); }
.drule .dot{ width:6px; height:6px; border-radius:50%; background:var(--brass); flex:0 0 auto; }

/* chrome */
.shead{ display:flex; justify-content:space-between; align-items:baseline;
        padding-bottom:15px; border-bottom:1px solid var(--rule-soft); }
.on-dark .shead,.dark .shead{ border-color:var(--rule-dk); }
.shead .r{ color:var(--olive); }
.on-dark .shead .r,.dark .shead .r{ color:rgba(241,231,215,.5); }
.sfoot{ margin-top:auto; padding-top:15px; border-top:1px solid var(--rule-soft);
        display:flex; justify-content:space-between; align-items:center;
        font-size:8.5px; font-weight:400; letter-spacing:.22em; text-transform:uppercase; color:var(--olive); }
.on-dark .sfoot,.dark .sfoot{ border-color:var(--rule-dk); color:rgba(241,231,215,.46); }

/* layout */
.row{ display:flex; gap:30px; }
.row > *{ flex:1; min-width:0; }
.mt10{margin-top:10px}.mt16{margin-top:16px}.mt18{margin-top:18px}.mt20{margin-top:20px}.mt22{margin-top:22px}.mt24{margin-top:24px}.mt30{margin-top:30px}
.mt40{margin-top:40px}.mt52{margin-top:52px}
.grow{ flex:1; }

/* cards */
.card{ background:var(--bone); border-top:2px solid var(--brass); padding:24px 24px 22px; }
.bone .card{ background:var(--paper); }
.on-dark .card,.dark .card{ background:#32241d; border-top-color:var(--brass); }
.card .n{ font-size:14px; color:var(--brass-deep); letter-spacing:.24em; }
.on-dark .card .n,.dark .card .n{ color:var(--brass-lt); }
.card .t{ font-size:22px; font-weight:500; color:var(--espresso); margin-top:9px; line-height:1.22; }
.on-dark .card .t,.dark .card .t{ color:var(--bone); }
.card .b{ font-size:12.5px; font-weight:300; line-height:1.66; color:var(--olive); margin-top:11px; }
.on-dark .card .b,.dark .card .b{ color:rgba(241,231,215,.72); }

/* lists */
ul{ list-style:none; }
li{ font-size:14px; font-weight:300; line-height:1.72; color:var(--cacao);
    padding-left:21px; position:relative; margin-bottom:9px; }
li::before{ content:''; position:absolute; left:0; top:10px; width:5px; height:5px;
            border-radius:50%; background:var(--brass); }
li.no{ color:var(--olive); }
li.no::before{ border-radius:0; width:10px; height:1px; top:12px; background:var(--travertine); }
.on-dark li.no,.dark li.no{ color:rgba(241,231,215,.5); }

/* tables */
table{ width:100%; border-collapse:collapse; }
td{ font-size:13.5px; font-weight:300; color:var(--cacao); padding:12px 0;
    border-bottom:1px solid var(--rule-soft); vertical-align:top; line-height:1.6; }
table.tight td{ padding:8px 0; }
table.tight td.k{ width:23%; }
td.k{ font-family:'Cormorant Garamond',serif; font-size:17px; color:var(--espresso); width:28%; }
td.k{ padding-right:20px; }
.on-dark td.k,.dark td.k{ color:var(--bone); }
td.v{ color:var(--brass-deep); width:16%; white-space:nowrap; font-weight:500; }
.on-dark td.v,.dark td.v{ color:var(--brass-lt); }

/* pills */
.pills{ display:flex; gap:10px; flex-wrap:wrap; }
.pill{ border:1px solid var(--rule); border-radius:999px; padding:9px 19px;
       font-size:9.5px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--brass-deep); }
.on-dark .pill,.dark .pill{ border-color:var(--rule-dk); color:var(--brass-lt); }

/* to-confirm */
.tbc{ font-family:'Montserrat',sans-serif; display:inline-block; border:1px dashed var(--brass);
      padding:3px 10px; font-size:9.5px; font-weight:500; letter-spacing:.16em;
      text-transform:uppercase; color:var(--brass-deep); vertical-align:middle; }
.on-dark .tbc,.dark .tbc{ color:var(--brass-lt); }

.cap{ font-size:9px; letter-spacing:.24em; text-transform:uppercase; color:var(--olive); margin-top:11px; }
.on-dark .cap,.dark .cap{ color:rgba(241,231,215,.45); }

/* juniqua slide only — the partner's own lilac is permitted here */
.jq .eyebrow{ color:#C9BEE4; }
.jq .pill{ border-color:rgba(160,142,208,.55); color:#C9BEE4; }
.jq .hr{ background:#8F7EC4; }

/* accommodation collage — labelled tiles with a caption strip */
.collage{ flex:1; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr 1fr auto; gap:6px; background:var(--espresso); }
.collage .tile{ position:relative; background-size:cover; background-position:center; }
.collage .tag{ position:absolute; left:10px; bottom:10px; font-size:8.5px; font-weight:500; letter-spacing:.2em;
               text-transform:uppercase; color:var(--bone); background:rgba(38,27,22,.74); padding:5px 9px; }
.collage .note{ grid-column:1/-1; padding:8px 14px 12px; font-size:10.5px; line-height:1.5; color:rgba(241,231,215,.72); }

.tightlist li{ margin-bottom:7px; }
