/*
Theme Name: Sakyan International
Author: Sakyan International Pvt. Ltd.
Description: Custom theme for sakyaninternational.com.np, matching the approved design preview.
Version: 1.0
Text Domain: sakyan
*/
/* Layout: a faithful preview of the WordPress pages, banded sections in Sakyan navy and gold, single light look on purpose */
:root {
  --navy:#0B3C5D; --navy-2:#0e4a72; --gold:#F4A100; --grey:#F2F6FA; --white:#FFFFFF;
  --ink:#1d2a36; --muted:#5B6B7A; --line:#dbe4ee; --todo:#fff1c7;
  --display:"Poppins","Segoe UI",system-ui,sans-serif; --body:"Mukta","Segoe UI",system-ui,sans-serif;
  color-scheme: light;
}
body { background:var(--white); color:var(--ink); font-family:var(--body); font-size:16px; line-height:1.6; }
body::before { content:""; position:fixed; inset:0 0 auto; height:env(safe-area-inset-top,0px); z-index:30; background:var(--white); }
.notice { background:var(--ink); color:#e8eef4; font-size:13px; padding-block:8px;
  padding-left:max(16px,env(safe-area-inset-left,0px)); padding-right:max(16px,env(safe-area-inset-right,0px)); text-align:center; }
.notice mark { background:var(--todo); color:var(--ink); padding:0 4px; border-radius:3px; }
header.site { position:sticky; top:env(safe-area-inset-top,0px); z-index:20; background:var(--white); border-bottom:1px solid var(--line); }
header.site .inner { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding-block:12px; }
.logo { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--navy); }
.logo b { width:40px; height:40px; border-radius:50%; background:var(--navy); color:var(--gold); display:grid; place-items:center; font-family:var(--display); font-size:15px; }
.logo span { font-family:var(--display); font-weight:600; font-size:16px; line-height:1.15; }
.logo small { display:block; font-family:var(--body); font-weight:500; color:var(--muted); font-size:12px; }
nav.menu { display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
nav.menu a, .dd button { font-family:var(--display); font-weight:500; font-size:14px; color:var(--navy); text-decoration:none; padding:8px 10px; border-radius:6px; background:none; border:0; cursor:pointer; }
nav.menu a:hover, .dd button:hover, nav.menu a.on { background:var(--grey); }
nav.menu a.cta { background:var(--gold); color:var(--navy); margin-left:6px; }
.dd { position:relative; }
.dd button svg { font-size:10px; margin-left:4px; }
.ddm { position:absolute; top:100%; left:0; background:var(--white); border:1px solid var(--line); border-radius:8px; padding:6px; min-width:170px; display:none; box-shadow:0 10px 24px rgba(11,60,93,.12); }
.dd:hover .ddm, .dd.open .ddm { display:block; }
.ddm a { display:block; }
.inner { max-width:1100px; margin:0 auto; padding-left:max(16px,env(safe-area-inset-left,0px)); padding-right:max(16px,env(safe-area-inset-right,0px)); }
.band { padding-block:var(--pt) var(--pb); }
.band.navy { background:var(--navy); } .band.gold { background:var(--gold); } .band.grey { background:var(--grey); } .band.white { background:var(--white); }
.grid { display:grid; gap:24px; align-items:start; }
.g1 { grid-template-columns:1fr; } .g2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.g3 { grid-template-columns:repeat(3,minmax(0,1fr)); } .g4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.band.gold .g4 { gap:12px; }
.col { min-width:0; display:flex; flex-direction:column; gap:10px; }
.col.card { background:var(--white); border-radius:12px; padding:22px; border:1px solid var(--line); }
.wh { font-family:var(--display); color:var(--navy); margin:0; text-wrap:balance; line-height:1.2; }
h1.wh { font-size:clamp(28px,4.6vw,46px); font-weight:700; }
h2.wh { font-size:clamp(22px,3vw,32px); font-weight:600; }
h3.wh { font-size:20px; } h4.wh { font-size:17px; font-weight:600; }
.wh.light { color:var(--white); }
.band.gold h2.wh { font-size:clamp(28px,4vw,40px); font-weight:700; }
.wt { color:var(--ink); max-width:70ch; }
.g1 .wt { margin-inline:auto; }
.wt.light { color:#dce7f1; }
.wt p { margin:0 0 10px; } .wt ul { margin:6px 0 0; padding-left:20px; } .wt li { margin-bottom:4px; }
.band.gold .wt p { margin:0; font-weight:600; color:var(--navy); }
.bwrap { margin:6px 0 0; text-align:center; }
.btn { display:inline-block; font-family:var(--display); font-weight:600; font-size:14px; padding:10px 22px; border-radius:6px; text-decoration:none; }
.btn.lg { padding:13px 28px; font-size:15px; }
.btn.gold { background:var(--gold); color:var(--navy); } .btn.navy { background:var(--navy); color:var(--white); }
.btn:focus-visible, nav.menu a:focus-visible, .dd button:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }
.band.navy .btn.gold:hover { background:#ffb52e; }
.ib { text-align:center; }
.ib .ic { font-size:34px; display:block; margin-bottom:8px; }
.ib h3 { font-family:var(--display); font-size:18px; color:var(--navy); margin:0 0 6px; }
.ib p { margin:0; color:var(--muted); font-size:15px; }
.ph { margin:0; }
.phbox { aspect-ratio:4/3; max-width:100%; border:2px dashed #b8c7d6; border-radius:10px; background:repeating-linear-gradient(45deg,#f7fafc,#f7fafc 10px,#eef3f8 10px,#eef3f8 20px);
  display:grid; place-content:center; justify-items:center; gap:6px; color:#7d8fa1; font-size:14px; }
.phbox svg { font-size:28px; }
.ph figcaption { text-align:center; font-size:13px; color:var(--muted); margin-top:6px; }
.tm { background:var(--white); border:1px solid var(--line); border-radius:12px; padding:20px; text-align:center; }
.tm p { margin:0 0 10px; font-style:italic; } .tm strong { display:block; color:var(--navy); } .tm span { font-size:13px; color:var(--muted); }
.acc details { background:var(--white); border:1px solid var(--line); border-radius:8px; margin-top:10px; padding:12px 16px; }
.acc summary { font-family:var(--display); font-weight:500; color:var(--navy); cursor:pointer; }
.acc details p { margin:8px 0 0; }
.map { aspect-ratio:4/3; max-width:100%; border-radius:10px; background:#e3ecf4; display:grid; place-content:center; justify-items:center; gap:8px; text-align:center; color:var(--navy); }
.map svg { font-size:34px; } .map small { color:var(--muted); }
mark.todo { background:var(--todo); color:#6b4b00; border-radius:3px; padding:0 3px; }
.wh.light mark.todo, .wt.light mark.todo { color:#6b4b00; }
footer.site { background:#082b43; color:#c9d7e4; font-size:14px; }
footer.site .inner { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-block:40px 24px; }
footer.site h4 { font-family:var(--display); color:var(--white); margin:0 0 10px; font-size:16px; }
footer.site p { margin:0 0 6px; } footer.site a { color:var(--gold); text-decoration:none; }
.copy { border-top:1px solid #1b4a6b; text-align:center; padding-block:12px; font-size:12px; color:#8fa6ba; }
.wa { position:fixed; right:calc(18px + env(safe-area-inset-right,0px)); bottom:calc(18px + env(safe-area-inset-bottom,0px)); width:54px; height:54px; border-radius:50%;
  background:#25D366; color:#fff; display:grid; place-items:center; font-size:28px; box-shadow:0 6px 18px rgba(0,0,0,.2); z-index:25; text-decoration:none; }
@media (max-width:820px) { .g3,.g4 { grid-template-columns:repeat(2,minmax(0,1fr)); } footer.site .inner { grid-template-columns:1fr; } }
@media (max-width:560px) { .g2,.g3 { grid-template-columns:1fr; } .col.empty { display:none; } nav.menu { width:100%; } }

.bkform { background:var(--white); border:1px solid var(--line); border-radius:12px; padding:22px; display:flex; flex-direction:column; gap:14px; }
.fgrid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.frow { display:flex; flex-direction:column; gap:5px; min-width:0; margin:0; }
.frow label, .fmode legend { font-family:var(--display); font-weight:500; font-size:14px; color:var(--navy); }
.frow label span { color:#b3261e; }
.bkform input[type=text], .bkform input[type=tel], .bkform input[type=email], .bkform input[type=date], .bkform select, .bkform textarea {
  font:inherit; font-size:15px; padding:10px 12px; border:1px solid #c5d3e0; border-radius:8px; background:var(--white); color:var(--ink); width:100%; box-sizing:border-box; }
.bkform input:focus, .bkform select:focus, .bkform textarea:focus { outline:2px solid var(--gold); outline-offset:1px; border-color:var(--navy); }
.fmode { border:0; padding:0; flex-direction:row; flex-wrap:wrap; gap:8px 18px; align-items:center; }
.fmode legend { width:100%; margin-bottom:4px; padding:0; }
.fmode label { font-family:var(--body); font-weight:400; font-size:15px; color:var(--ink); display:flex; gap:6px; align-items:center; }
.fnote { margin:0; font-size:13px; color:var(--muted); }
.fbtn { border:0; cursor:pointer; align-self:flex-start; }
.fbtn svg { margin-right:6px; }
.fhp { position:absolute; left:-9999px; }
.fmsg { border-radius:10px; padding:14px 16px; font-weight:500; }
.fmsg.ok { background:#e6f4ea; color:#1e5b2e; border:1px solid #b9dfc3; }
.fmsg.err { background:#fdecea; color:#8a1c14; border:1px solid #f3c1bb; }
@media (max-width:560px) { .fgrid { grid-template-columns:1fr; } .fbtn { align-self:stretch; } }

@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; } }

.todo-note { display:none; }
.ph img { width:100%; height:auto; border-radius:10px; border:1px solid var(--line); background:#fff; display:block; }
.ph a { display:block; }
.admin-bar header.site { top:32px; }
@media (max-width:782px) { .admin-bar header.site { top:46px; } }
.map-live { aspect-ratio:auto; height:380px; display:block; padding:0; }
