:root{
  --cream:#F7F3EC;
  --charcoal:#1A1A1A;
  --gold:#C6A667;
  --muted:#6b6b6b;
  --card:#ffffff;
  --border:rgba(26,26,26,.12);
  --shadow: 0 10px 30px rgba(0,0,0,.08);
  --radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial;}
body{background:var(--cream);color:var(--charcoal);line-height:1.55}
a{color:inherit;text-decoration:none}
.container{max-width:1080px;margin:0 auto;padding:24px}
.nav{
  position:sticky;top:0;z-index:50;
  backdrop-filter:saturate(140%) blur(10px);
  background:rgba(247,243,236,.86);
  border-bottom:1px solid var(--border);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;flex-direction:column}
.brand .name{font-weight:800;letter-spacing:.2px}
.brand .tag{font-size:12px;color:var(--muted)}
.links{display:flex;gap:12px;align-items:center}
.links a{padding:10px 12px;border-radius:12px;line-height:1;white-space:nowrap}
.links a.active, .links a:hover{background:rgba(198,166,103,.18)}

/* Make the header feel uniform on wider screens (avoid wrapping the CTA onto a new line) */
@media (min-width: 980px){
  .links{flex-wrap:nowrap}
}

/* On smaller screens, stack the nav for clean alignment */
@media (max-width: 979px){
  .nav-inner{flex-direction:column;align-items:flex-start}
  .links{flex-wrap:wrap;width:100%}
}

/* Nav CTA (Contact) */
.links a.nav-cta{
  background:rgba(239,230,214,1);
  border:1px solid rgba(26,26,26,.12);
}
.links a.nav-cta:hover{background:rgba(239,230,214,.92)}
.links a.nav-cta.active{background:rgba(239,230,214,1)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 16px;border-radius:14px;
  border:1px solid rgba(26,26,26,.18);
  background:var(--card);
  box-shadow:0 1px 0 rgba(0,0,0,.04);
  font-weight:700;
}
.btn.primary{
  background:var(--charcoal);color:var(--cream);
  border-color:var(--charcoal);
}
.btn.primary:hover{opacity:.94}
.btn:hover{transform:translateY(-1px)}
.hero{padding:38px 0 20px}
.kicker{display:inline-block;padding:6px 10px;border-radius:999px;background:rgba(198,166,103,.22);border:1px solid rgba(198,166,103,.35);font-weight:700;font-size:12px}
h1{font-size:38px;line-height:1.1;margin:14px 0 10px}
h2{font-size:26px;margin:18px 0 10px}
h3{font-size:18px;margin:0 0 8px}
p{margin:0 0 12px;color:rgba(26,26,26,.92)}
.muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:18px;
}
.card.slim{padding:14px}
.badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:rgba(26,26,26,.9)}
.badge span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.section{padding:16px 0 34px}
.footer{padding:28px 0;border-top:1px solid var(--border);margin-top:30px}
.footer small{color:var(--muted)}
.hr{height:1px;background:var(--border);margin:14px 0}
.two-col{grid-column:span 12;display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
@media (max-width:900px){.two-col{grid-template-columns:1fr}}
.col-7{grid-column:span 7}
.col-5{grid-column:span 5}
.col-6{grid-column:span 6}
.col-12{grid-column:span 12}
@media (max-width:900px){.col-7,.col-5,.col-6{grid-column:span 12}}
.list{margin:0;padding-left:18px}
.list li{margin:6px 0;color:rgba(26,26,26,.92)}
.pill{
  display:inline-flex;gap:10px;align-items:center;
  padding:10px 12px;border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.7)
}
.pill strong{font-weight:800}
.notice{
  border-left:4px solid var(--gold);
  padding:12px 14px;background:rgba(198,166,103,.12);
  border-radius:14px;border:1px solid rgba(198,166,103,.25)
}

/* Accordion */
.accordion{display:flex;flex-direction:column;gap:12px}
details{
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:var(--card);
  box-shadow:var(--shadow);
  overflow:hidden;
}
summary{
  list-style:none;
  cursor:pointer;
  padding:16px 16px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  font-weight:900;
}
summary::-webkit-details-marker{display:none}
.summary-right{display:flex;gap:10px;align-items:center}
.price{font-weight:900;color:var(--charcoal);background:rgba(198,166,103,.18);border:1px solid rgba(198,166,103,.28);padding:6px 10px;border-radius:999px;font-size:12px}
.chev{transition:transform .2s ease}
details[open] .chev{transform:rotate(180deg)}
.detail-body{padding:0 16px 16px 16px}
.kv{display:grid;grid-template-columns:1fr;gap:10px}
.kv h4{margin:10px 0 6px;font-size:14px}
.kv .block{padding:12px 12px;border-radius:14px;border:1px solid var(--border);background:rgba(247,243,236,.45)}
.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}

/* Forms */
form{display:grid;gap:12px}
input, textarea, select{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.9);
  font:inherit;
}
textarea{min-height:120px;resize:vertical}
label{font-weight:800;font-size:12px;color:rgba(26,26,26,.88)}

/* Tabs (Services) */
.tabs{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.tab-btn{border:1px solid rgba(0,0,0,.12);background:transparent;padding:10px 14px;border-radius:12px;font-weight:700;cursor:pointer}
.tab-btn.active{background:rgba(0,0,0,.06)}
.tab-panel{margin-top:6px}
.tab-panel .col-12{padding:0}


/* International offer cards layout */
.cards-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.cards-grid .col-6{grid-column:span 6}
.cards-grid .col-12{grid-column:span 12}
@media (max-width: 860px){
  .cards-grid .col-6{grid-column:span 12}
}

/* US-only notice spacing */
.us-only-notice{margin:14px 0}
