:root{
  --ink:#14263a;
  --muted:#66778b;
  --paper:#fffdf8;
  --cream:#f7f1e7;
  --navy:#0a2238;
  --navy-soft:#163751;
  --footer:#071a2b;
  --saffron:#f26d3f;
  --saffron-soft:#ff9d7f;
  --gold:#bf8a1c;
  --green:#138808;
  --line:rgba(20,38,58,.12);
  --shadow:0 24px 60px rgba(10,34,56,.12);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
html[lang="kn"] body{font-family:Inter,"Noto Sans Kannada",system-ui,sans-serif}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,92vw);margin:auto}
.gov-ribbon{height:4px;background:linear-gradient(90deg,#ff9933 0 33%,#fff 33% 66%,#138808 66%)}

/* Header */
.header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:94px}
.brand-logo{display:flex;align-items:center;gap:18px;min-width:0}
.brand-avatar{width:74px;height:74px;border-radius:999px;border:4px solid rgba(242,109,63,.55);background:#fff;box-shadow:0 12px 28px rgba(242,109,63,.16);overflow:hidden;flex:0 0 auto}
.brand-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.brand-wording{display:flex;flex-direction:column;min-width:0}
.brand-wording strong{font-size:30px;line-height:1;font-weight:900;letter-spacing:-.04em;color:var(--saffron);white-space:nowrap}
.brand-wording small{margin-top:7px;font-size:16px;font-weight:800;color:var(--saffron);line-height:1.2}
.nav{display:flex;align-items:center;gap:8px}
.nav a{padding:11px 15px;border-radius:999px;font-size:14px;font-weight:800;color:#34485d;transition:.22s ease}
.nav a.active,.nav a:hover{background:var(--navy);color:#fff}
.lang-switch{display:flex;align-items:center;background:#eef2f5;border:1px solid var(--line);border-radius:999px;padding:4px;margin-left:6px}
.lang-btn{border:0;background:transparent;padding:8px 11px;border-radius:999px;font-weight:900;color:#34485d;cursor:pointer}
.lang-btn.active{background:#fff;color:var(--navy);box-shadow:0 6px 16px rgba(10,34,56,.14)}
.menu-btn{display:none;align-items:center;justify-content:center;width:46px;height:46px;border:0;border-radius:14px;background:var(--navy);color:#fff;font-size:18px;cursor:pointer}

/* General */
.section{padding:82px 0}
.section-tight{padding:48px 0 72px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#9b6913;font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:12px;margin-bottom:16px}
.eyebrow::before{content:"";width:42px;height:2px;background:var(--gold)}
.section-title,.page-title{font-family:"Playfair Display",serif;font-size:clamp(34px,4.2vw,56px);line-height:1.06;letter-spacing:-.03em;color:#102538}
.section-subtitle,.lead-text,.contact-row span,.contact-row a,.contact-form .note{color:var(--muted);line-height:1.78}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;font-size:15px;font-weight:900;transition:.22s ease}
.btn.primary{background:var(--saffron);color:#fff;box-shadow:0 18px 35px rgba(242,109,63,.25)}
.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--navy)}
.btn:hover{transform:translateY(-3px)}
.card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.reveal.visible{opacity:1;transform:none}

/* Home hero */
.hero-split{position:relative;min-height:calc(100vh - 98px);display:flex;align-items:center;background:radial-gradient(circle at 16% 22%,rgba(242,109,63,.08),transparent 22%),linear-gradient(180deg,#fffdf8 0%,#fffaf1 55%,#f6f8f5 100%)}
.hero-split::after{content:"";position:absolute;left:0;right:0;bottom:0;height:16px;background:linear-gradient(90deg,var(--saffron),#fff,var(--green));opacity:.72}
.hero-split-inner{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;padding:56px 0 48px}
.hero-photo-side{display:flex;align-items:flex-end;justify-content:center;min-height:620px}
.hero-photo-frame{position:relative;width:min(460px,92vw);height:610px;display:flex;align-items:flex-end;justify-content:center}
.hero-photo-panel{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:320px;height:450px;border-radius:34px;background:linear-gradient(160deg,#08182a 0%,#0a2238 55%,#173c5a 100%);box-shadow:0 34px 90px rgba(7,26,43,.28);overflow:hidden}
.hero-photo-panel::before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.15);border-radius:22px}
.hero-photo-panel::after{content:"";position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;background:rgba(242,109,63,.22)}
.hero-main-photo{position:relative;z-index:2;max-height:610px;max-width:100%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 28px 34px rgba(0,0,0,.26))}
.hero-copy-side{display:flex;flex-direction:column;align-items:flex-start}
.hero-name{font-family:"Playfair Display",serif;font-size:clamp(48px,6vw,82px);line-height:1;letter-spacing:-.045em;color:#102538}
.hero-designation{margin-top:14px;font-size:clamp(18px,2.1vw,31px);font-weight:900;line-height:1.3;color:#243d55;max-width:680px}
.hero-copy-side .btn-row{margin-top:28px}
.profile-note{padding-top:0}
.minimal-note{padding:28px 32px}
.minimal-note p{font-size:16px;color:#506173;line-height:1.8;text-align:center}

/* About */
.timeline-section .section-head{max-width:780px;margin:0 auto 34px;text-align:center}
.timeline-wrap{position:relative;max-width:1040px;margin:0 auto}
.timeline-wrap::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:linear-gradient(var(--saffron),var(--gold),var(--green));transform:translateX(-50%)}
.timeline-item{display:grid;grid-template-columns:1fr 90px 1fr;gap:24px;align-items:center;margin-bottom:28px}
.timeline-item:nth-child(even) .timeline-card{grid-column:3}
.timeline-item:nth-child(even) .timeline-node{grid-column:2;grid-row:1}
.timeline-card{padding:24px 24px 22px;border-left:5px solid var(--saffron)}
.timeline-card h3{font-size:22px;margin-bottom:7px;color:#102538}
.timeline-card p{color:var(--muted);line-height:1.75}
.timeline-node{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:12px;font-weight:900;color:#fff;background:linear-gradient(145deg,#08182a,#123655);border:6px solid #fff;box-shadow:0 14px 30px rgba(10,34,56,.18);z-index:2;padding:8px}
.timeline-spacer{height:1px}

/* Gallery */
.gallery-intro{text-align:center;max-width:760px;margin:0 auto 32px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-card{position:relative;overflow:hidden;border-radius:28px;background:#d8d8d8;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:4/4.7;cursor:pointer;transition:transform .22s ease, box-shadow .22s ease}
.gallery-card:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(10,34,56,.18)}
.gallery-card img{width:100%;height:100%;object-fit:cover}
.gallery-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 20%,rgba(6,23,36,.82) 100%)}
.gallery-caption{position:absolute;left:16px;right:16px;bottom:15px;z-index:2;color:#fff;font-size:14px;font-weight:800;line-height:1.4;text-shadow:0 2px 10px rgba(0,0,0,.32)}
.gallery-modal{position:fixed;inset:0;background:rgba(7,26,43,.82);display:none;align-items:center;justify-content:center;padding:22px;z-index:1200}
.gallery-modal.open{display:flex}
.modal-card{width:min(980px,95vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;box-shadow:0 32px 80px rgba(0,0,0,.34)}
.modal-card img{width:100%;max-height:62vh;object-fit:contain;background:#f6f2eb}
.modal-content{padding:24px 26px 30px}
.modal-content h2{font-family:"Playfair Display",serif;font-size:30px;line-height:1.1;margin-bottom:10px;color:#102538}
.modal-content p{color:#506173;line-height:1.82}
.modal-close{position:fixed;right:30px;top:24px;width:48px;height:48px;border:0;border-radius:999px;background:var(--saffron);color:#fff;font-size:20px;cursor:pointer;z-index:1300;box-shadow:0 14px 34px rgba(242,109,63,.28)}
.gallery-help{margin-top:26px;padding:18px 20px;border-radius:20px;background:#fff7ed;border:1px solid var(--line);color:#4f6072;line-height:1.72}

/* Contact */
.contact-section{background:#efefef;padding:80px 0}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.contact-form-wrap h2,.contact-details-wrap h2{font-family:"Playfair Display",serif;font-size:clamp(34px,3.3vw,52px);line-height:1.05;margin-bottom:24px;color:#102538}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:18px 22px;border:0;border-radius:28px;background:#fff;color:var(--ink);outline:0}
.contact-form textarea{grid-column:1/-1;min-height:164px;resize:vertical;border-radius:26px}
.contact-form button{grid-column:1/-1;border:0;border-radius:999px;padding:16px;background:var(--saffron);color:#fff;font-weight:900;letter-spacing:.03em;cursor:pointer}
.contact-list{display:grid;gap:22px}
.contact-row{display:grid;grid-template-columns:34px 1fr;gap:16px;align-items:flex-start}
.contact-row i{margin-top:2px;text-align:center;color:var(--saffron);font-size:23px}
.contact-row strong{display:block;font-size:17px;margin-bottom:4px;color:#102538}
.contact-socials{display:flex;gap:12px;margin-top:26px}
.contact-socials a,.socials a{width:43px;height:43px;border-radius:999px;display:grid;place-items:center;transition:.2s ease}
.contact-socials a{background:var(--saffron);color:#fff}
.contact-socials a:hover,.socials a:hover{transform:translateY(-3px)}

/* Footer */
.footer{margin-top:0;background:linear-gradient(180deg,#08182a 0%,#071a2b 100%);color:#fff;padding:44px 0 18px}
.footer-shell{border-radius:34px;padding:0}
.footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-top .brand-wording strong,.footer-top .brand-wording small{color:#fff}
.footer-top .brand-avatar{border-color:rgba(255,255,255,.24);box-shadow:none;background:rgba(255,255,255,.08)}
.footer-top .brand-avatar img{object-position:center 16%}
.footer-cols{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:34px;padding:28px 0}
.footer-col h4{font-size:16px;font-weight:900;letter-spacing:.02em;margin-bottom:14px;color:#fff}
.footer-col p,.footer-col a,.footer-col span{color:#c8d3de;line-height:1.8;font-size:15px}
.footer-col a{display:block;margin:6px 0}
.footer-col a:hover{color:#fff}
.socials{display:flex;gap:10px;margin-top:12px}
.socials a{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff}
.footer-mini-contact{display:grid;gap:6px}
.copyright{text-align:center;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);color:#9ab0c4;font-size:14px}

/* Mobile */
@media(max-width:1080px){
  .hero-split-inner{grid-template-columns:1fr;gap:26px;padding-top:36px}
  .hero-photo-side{order:1;min-height:540px}
  .hero-copy-side{order:2;align-items:center;text-align:center;padding-bottom:6px}
  .hero-copy-side .eyebrow{justify-content:center}
  .hero-designation{max-width:760px}
  .btn-row{justify-content:center}
}
@media(max-width:980px){
  .menu-btn{display:inline-flex}
  .nav{position:absolute;top:100%;left:0;right:0;background:rgba(255,253,248,.98);border-bottom:1px solid var(--line);padding:16px 4vw 20px;flex-direction:column;align-items:stretch;display:none}
  .nav.show{display:flex}
  .nav a{padding:13px 16px;border-radius:16px}
  .lang-switch{align-self:flex-start;margin-left:0;margin-top:6px}
  .head-inner{min-height:86px;padding:12px 0}
  .brand-avatar{width:62px;height:62px}
  .brand-wording strong{font-size:25px}
  .brand-wording small{font-size:13px}
  .timeline-wrap::before{left:36px;transform:none}
  .timeline-item,.timeline-item:nth-child(even){grid-template-columns:72px 1fr;gap:14px}
  .timeline-node,.timeline-item:nth-child(even) .timeline-node{grid-column:1;grid-row:1;width:72px;height:72px;font-size:10px;border-width:5px}
  .timeline-card,.timeline-item:nth-child(even) .timeline-card{grid-column:2;grid-row:1}
  .timeline-spacer{display:none}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .contact-layout,.footer-cols{grid-template-columns:1fr}
}
@media(max-width:760px){
  .section{padding:62px 0}
  .section-tight{padding:38px 0 58px}
  .brand-avatar{width:56px;height:56px}
  .brand-wording strong{font-size:22px}
  .brand-wording small{font-size:12px}
  .hero-split{min-height:auto}
  .hero-photo-side{min-height:440px}
  .hero-photo-frame{height:460px;width:100%}
  .hero-photo-panel{width:250px;height:330px;border-radius:28px}
  .hero-main-photo{max-height:460px}
  .hero-name{font-size:44px}
  .hero-designation{font-size:20px}
  .minimal-note{padding:22px 20px}
  .contact-form{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .gallery-card{aspect-ratio:4/4.4}
  .footer-top{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .container{width:min(94vw,1180px)}
  .brand-avatar{width:50px;height:50px;border-width:3px}
  .brand-wording strong{font-size:19px}
  .brand-wording small{font-size:11px;max-width:180px}
  html[lang="kn"] .brand-wording strong{font-size:18px}
  html[lang="kn"] .brand-wording small{font-size:10px}
  .hero-photo-side{min-height:390px}
  .hero-photo-frame{height:405px}
  .hero-photo-panel{width:220px;height:290px}
  .hero-main-photo{max-height:405px}
  .hero-name{font-size:38px}
  .hero-designation{font-size:18px}
  .btn{width:100%}
  .btn-row{width:100%;flex-direction:column}
  .footer-top .brand-wording small{display:block}
}


/* ===== v7 exact logo + gallery upload system ===== */
.exact-logo{
  display:flex;
  align-items:center;
  flex:0 1 430px;
  min-width:280px;
}
.exact-logo img{
  width:min(430px,44vw);
  height:auto;
  object-fit:contain;
  display:block;
}
.footer-top .exact-logo img{filter:none;width:min(420px,90vw)}
.gallery-card video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  background:#071a2b;
}
.media-pill{
  position:absolute;
  top:14px;
  right:14px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#102538;
  font-size:12px;
  font-weight:900;
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}
.modal-card video{
  width:100%;
  max-height:62vh;
  background:#071a2b;
  display:block;
}
.empty-gallery{
  grid-column:1/-1;
  padding:42px 28px;
  border-radius:26px;
  background:#fff7ed;
  border:1px solid var(--line);
  color:#4f6072;
  text-align:center;
  line-height:1.7;
}
.upload-page{
  background:linear-gradient(135deg,#f7f1e7 0%,#fffdf8 46%,#eef6f2 100%);
  min-height:calc(100vh - 98px);
  padding:70px 0;
}
.upload-shell{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:28px;
  align-items:start;
}
.login-panel,.upload-panel,.items-panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  box-shadow:var(--shadow);
  padding:30px;
}
.login-panel h1,.upload-panel h1,.items-panel h2{
  font-family:"Playfair Display",serif;
  font-size:clamp(30px,3vw,44px);
  line-height:1.08;
  margin-bottom:12px;
  color:#102538;
}
.login-panel p,.upload-panel p,.items-panel p{
  color:var(--muted);
  line-height:1.75;
}
.admin-form{
  display:grid;
  gap:14px;
  margin-top:22px;
}
.admin-form input,.admin-form textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fffdf8;
  padding:15px 17px;
  outline:0;
  color:var(--ink);
}
.admin-form textarea{min-height:112px;resize:vertical}
.admin-form input[type="file"]{background:#f7f1e7}
.admin-form button,.admin-btn{
  border:0;
  border-radius:999px;
  background:var(--saffron);
  color:#fff;
  padding:14px 18px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 16px 30px rgba(242,109,63,.22);
}
.admin-btn.secondary{
  background:var(--navy);
  box-shadow:0 16px 30px rgba(10,34,56,.18);
}
.upload-status{
  margin-top:14px;
  padding:12px 14px;
  border-radius:16px;
  background:#f7f1e7;
  color:#4f6072;
  line-height:1.6;
  display:none;
}
.upload-status.show{display:block}
.admin-grid{display:grid;gap:24px}
.admin-item-list{display:grid;gap:12px;margin-top:16px}
.admin-item{
  display:grid;
  grid-template-columns:80px 1fr auto;
  gap:14px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:18px;
  padding:10px;
  background:#fffdf8;
}
.admin-item img,.admin-item video{
  width:80px;height:60px;object-fit:cover;border-radius:12px;background:#071a2b;
}
.admin-item strong{display:block;color:#102538}
.admin-item span{font-size:13px;color:var(--muted)}
.delete-btn{
  border:0;
  background:#ffe8df;
  color:#b93d1e;
  border-radius:12px;
  padding:10px 12px;
  font-weight:900;
  cursor:pointer;
}
.api-note{
  margin-top:18px;
  padding:14px 16px;
  border-radius:18px;
  background:#fff7ed;
  border:1px solid var(--line);
  color:#506173;
  line-height:1.72;
  font-size:14px;
}
@media(max-width:980px){
  .exact-logo img{width:min(360px,64vw)}
  .upload-shell{grid-template-columns:1fr}
}
@media(max-width:760px){
  .exact-logo{min-width:0;flex:1}
  .exact-logo img{width:min(270px,68vw)}
  .admin-item{grid-template-columns:68px 1fr;grid-template-areas:"thumb info" "btn btn"}
  .admin-item img,.admin-item video{grid-area:thumb;width:68px;height:56px}
  .admin-item div{grid-area:info}
  .admin-item button{grid-area:btn}
}


/* ===== v8 refinements: compact language logos, hero balance, footer option 3 ===== */
.exact-logo{
  flex:0 1 285px;
  min-width:220px;
  max-width:285px;
}
.exact-logo img{
  width:100%;
  max-width:285px;
}
.logo-kn{display:none}
html[lang="kn"] .logo-en{display:none}
html[lang="kn"] .logo-kn{display:block}

.head-inner{
  min-height:78px;
}
.header .exact-logo{
  max-width:285px;
}
.footer-top .exact-logo{
  max-width:260px;
}
.footer-top .exact-logo img{
  width:100%;
  max-width:260px;
}

.hero-split-inner{
  grid-template-columns:.92fr 1.08fr;
  gap:52px;
  padding:40px 0 44px;
}
.hero-photo-side{
  min-height:590px;
}
.hero-photo-frame{
  width:min(470px,90vw);
  height:575px;
}
.hero-photo-panel{
  width:355px;
  height:475px;
  border-radius:38px;
}
.hero-main-photo{
  max-height:565px;
  max-width:94%;
}
.hero-name{
  font-size:clamp(46px,5.5vw,76px);
}
html[lang="kn"] .hero-name{
  font-family:Inter,"Noto Sans Kannada",system-ui,sans-serif;
  font-size:clamp(38px,4.4vw,60px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
}
html[lang="kn"] .hero-designation{
  font-size:clamp(18px,1.8vw,25px);
  line-height:1.65;
  max-width:700px;
}
html[lang="kn"] .page-title{
  font-family:Inter,"Noto Sans Kannada",system-ui,sans-serif;
  font-size:clamp(30px,3.7vw,48px);
  line-height:1.28;
  letter-spacing:-.02em;
}
html[lang="kn"] .section-subtitle,
html[lang="kn"] .lead-text,
html[lang="kn"] p,
html[lang="kn"] .timeline-card p{
  line-height:1.85;
}
html[lang="kn"] .gallery-intro{
  max-width:860px;
}
html[lang="kn"] .gallery-caption{
  font-size:13px;
  line-height:1.55;
}
html[lang="kn"] .contact-form-wrap h2,
html[lang="kn"] .contact-details-wrap h2{
  font-family:Inter,"Noto Sans Kannada",system-ui,sans-serif;
  font-size:clamp(30px,3vw,44px);
  line-height:1.25;
}

.footer.footer-simple{
  padding:38px 0 18px;
}
.footer-simple .footer-top{
  padding-bottom:24px;
}
.footer-simple .footer-cols{
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:26px;
  padding:24px 0;
}
.footer-simple .footer-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 18px;
}
.footer-simple .footer-links a{
  margin:0;
  font-weight:800;
}
.footer-simple .footer-social-wrap{
  display:flex;
  justify-content:flex-end;
}
.back-to-top{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:999px;
  padding:12px 17px;
  font-weight:900;
  transition:.2s ease;
  white-space:nowrap;
}
.back-to-top:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.13);
}
.footer-bottom-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.12);
  color:#9ab0c4;
  font-size:14px;
}
.footer-bottom-row .copyright{
  border:0;
  padding:0;
  text-align:left;
}
@media(max-width:1080px){
  .hero-photo-frame{height:535px}
  .hero-photo-side{min-height:535px}
  .hero-photo-panel{width:335px;height:430px}
  .hero-main-photo{max-height:525px}
}
@media(max-width:980px){
  .exact-logo,.header .exact-logo{max-width:250px;min-width:200px}
  .exact-logo img{max-width:250px}
  .hero-split-inner{grid-template-columns:1fr;gap:12px}
  .hero-photo-side{min-height:500px}
  .hero-photo-frame{height:500px}
  .hero-photo-panel{width:310px;height:390px}
  .hero-main-photo{max-height:490px}
  .footer-simple .footer-cols{grid-template-columns:1fr;justify-items:center;text-align:center}
  .footer-simple .footer-social-wrap{justify-content:center}
  .footer-bottom-row{flex-direction:column;text-align:center}
  .footer-bottom-row .copyright{text-align:center}
}
@media(max-width:760px){
  .exact-logo,.header .exact-logo{max-width:225px;min-width:0}
  .exact-logo img{max-width:225px}
  .head-inner{min-height:74px}
  .hero-photo-side{min-height:420px}
  .hero-photo-frame{height:430px}
  .hero-photo-panel{width:270px;height:330px;border-radius:30px}
  .hero-main-photo{max-height:420px;max-width:92%}
  html[lang="kn"] .hero-name{font-size:34px}
  html[lang="kn"] .hero-designation{font-size:17px}
}
@media(max-width:480px){
  .exact-logo,.header .exact-logo{max-width:190px}
  .exact-logo img{max-width:190px}
  .hero-photo-side{min-height:370px}
  .hero-photo-frame{height:380px}
  .hero-photo-panel{width:235px;height:292px}
  .hero-main-photo{max-height:370px;max-width:92%}
  .footer-top .exact-logo,.footer-top .exact-logo img{max-width:215px}
}


/* ===== v9 fixes ===== */
/* Force only one logo to show */
.exact-logo .logo-en{display:block !important;}
.exact-logo .logo-kn{display:none !important;}
html[lang="kn"] .exact-logo .logo-en{display:none !important;}
html[lang="kn"] .exact-logo .logo-kn{display:block !important;}

/* Header compact logo */
.header .exact-logo{
  max-width:245px !important;
  flex-basis:245px !important;
}
.header .exact-logo img{
  max-width:245px !important;
}

/* Hero: text left, photo right */
.hero-split-inner{
  grid-template-columns:1.04fr .96fr !important;
  gap:44px !important;
}
.hero-copy-side{
  order:1 !important;
}
.hero-photo-side{
  order:2 !important;
  min-height:565px !important;
}
.hero-photo-frame{
  width:min(500px,90vw) !important;
  height:555px !important;
}
.hero-photo-panel{
  width:390px !important;
  height:405px !important;
  bottom:0 !important;
  border-radius:38px 38px 0 0 !important;
}
.hero-main-photo{
  max-height:555px !important;
  max-width:92% !important;
  object-position:bottom center !important;
}
.hero-name{
  font-size:clamp(48px,5.6vw,78px) !important;
}
.hero-designation{
  max-width:720px !important;
}

/* Remove home note spacing */
.profile-note{display:none !important;}

@media(max-width:1080px){
  .hero-split-inner{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .hero-copy-side{
    order:1 !important;
    align-items:center !important;
    text-align:center !important;
  }
  .hero-photo-side{
    order:2 !important;
    min-height:500px !important;
  }
  .hero-photo-frame{height:500px !important;}
  .hero-photo-panel{width:345px !important;height:365px !important;}
  .hero-main-photo{max-height:500px !important;}
}
@media(max-width:760px){
  .header .exact-logo{
    max-width:205px !important;
    flex-basis:205px !important;
  }
  .header .exact-logo img{max-width:205px !important;}
  .hero-photo-side{min-height:420px !important;}
  .hero-photo-frame{height:420px !important;}
  .hero-photo-panel{width:280px !important;height:305px !important;}
  .hero-main-photo{max-height:420px !important;}
}
@media(max-width:480px){
  .header .exact-logo{
    max-width:175px !important;
    flex-basis:175px !important;
  }
  .header .exact-logo img{max-width:175px !important;}
  .hero-photo-side{min-height:370px !important;}
  .hero-photo-frame{height:370px !important;}
  .hero-photo-panel{width:245px !important;height:265px !important;}
  .hero-main-photo{max-height:370px !important;}
}


/* ===== v10 footer single-line layout ===== */
.footer.footer-simple{
  padding:32px 0 18px !important;
}
.footer-simple .footer-top{
  display:grid !important;
  grid-template-columns:280px 1fr 280px !important;
  align-items:center !important;
  gap:24px !important;
  padding-bottom:22px !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}
.footer-simple .footer-top .exact-logo{
  justify-self:start !important;
  max-width:245px !important;
  flex-basis:auto !important;
}
.footer-simple .footer-top .exact-logo img{
  max-width:245px !important;
}
.footer-simple .footer-links{
  justify-self:center !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px 22px !important;
}
.footer-simple .footer-links a{
  margin:0 !important;
  font-weight:900 !important;
  color:#d7e2ec !important;
}
.footer-simple .footer-links a:hover{
  color:#fff !important;
}
.footer-simple .footer-social-wrap{
  justify-self:end !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
.footer-simple .footer-cols,
.footer-bottom-row .back-to-top,
.footer-bottom-row span{
  display:none !important;
}
.footer-bottom-row{
  display:block !important;
  padding-top:18px !important;
  border-top:0 !important;
  text-align:center !important;
}
.footer-bottom-row .copyright{
  text-align:center !important;
  padding:0 !important;
  border:0 !important;
  color:#9ab0c4 !important;
}
@media(max-width:980px){
  .footer-simple .footer-top{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    text-align:center !important;
  }
  .footer-simple .footer-top .exact-logo,
  .footer-simple .footer-social-wrap{
    justify-self:center !important;
  }
}
@media(max-width:480px){
  .footer-simple .footer-top .exact-logo,
  .footer-simple .footer-top .exact-logo img{
    max-width:215px !important;
  }
}


/* ===== v12 working contact form email ===== */
.form-status{
  grid-column:1/-1;
  display:none;
  padding:13px 15px;
  border-radius:16px;
  background:#fff7ed;
  border:1px solid var(--line);
  color:#506173;
  line-height:1.6;
  font-size:14px;
}
.form-status.show{display:block}
.form-status.success{
  background:#eef8f1;
  color:#14532d;
}
.form-status.error{
  background:#fff1f0;
  color:#9f1239;
}
.contact-form button[disabled]{
  opacity:.75;
  cursor:not-allowed;
}


/* ===== v14 text size + contact form refinements ===== */
.hero-name{
  font-size:clamp(40px,4.7vw,64px) !important;
}
.hero-designation{
  font-size:clamp(17px,1.75vw,24px) !important;
  line-height:1.42 !important;
}
.gallery-intro .page-title{
  font-size:clamp(28px,3.1vw,42px) !important;
  line-height:1.16 !important;
}
.contact-form-wrap h2,
.contact-details-wrap h2{
  font-size:clamp(28px,2.8vw,40px) !important;
  line-height:1.12 !important;
}
html[lang="kn"] .hero-name{
  font-size:clamp(32px,3.8vw,48px) !important;
}
html[lang="kn"] .hero-designation{
  font-size:clamp(16px,1.65vw,21px) !important;
  line-height:1.65 !important;
}
html[lang="kn"] .gallery-intro .page-title,
html[lang="kn"] .contact-form-wrap h2,
html[lang="kn"] .contact-details-wrap h2{
  font-size:clamp(27px,3vw,38px) !important;
  line-height:1.35 !important;
}
.contact-form select:invalid{
  color:#8a98a8;
}
.contact-form option{
  color:#14263a;
}
@media(max-width:760px){
  .hero-name{font-size:36px !important;}
  .hero-designation{font-size:18px !important;}
  .gallery-intro .page-title{font-size:30px !important;}
  .contact-form-wrap h2,.contact-details-wrap h2{font-size:30px !important;}
}


/* ===== v15 home hero buttons: plain by default, coloured on hover/click ===== */
.hero-copy-side .btn.primary,
.hero-copy-side .btn.secondary{
  background:#fff !important;
  color:var(--navy) !important;
  border:1px solid var(--line) !important;
  box-shadow:0 10px 24px rgba(10,34,56,.08) !important;
}

.hero-copy-side .btn.primary:hover,
.hero-copy-side .btn.secondary:hover,
.hero-copy-side .btn.primary:focus,
.hero-copy-side .btn.secondary:focus,
.hero-copy-side .btn.primary:active,
.hero-copy-side .btn.secondary:active{
  background:var(--saffron) !important;
  color:#fff !important;
  border-color:var(--saffron) !important;
  box-shadow:0 18px 35px rgba(242,109,63,.25) !important;
}


/* ===== v16 About page timeline spacing fix ===== */
.timeline-section .section-head{
  margin-bottom:58px !important;
}

.timeline-wrap{
  padding-top:10px !important;
}

.timeline-wrap::before{
  top:10px !important;
}

/* Gives first circular stamp breathing space below the title */
.timeline-item:first-child{
  margin-top:8px !important;
}

@media(max-width:760px){
  .timeline-section .section-head{
    margin-bottom:42px !important;
  }
  .timeline-wrap{
    padding-top:6px !important;
  }
}


/* ===== v20 premium hero background depth ===== */
.hero-split{
  background:
    radial-gradient(circle at 18% 28%, rgba(242,109,63,.135), transparent 27%),
    radial-gradient(circle at 78% 38%, rgba(10,34,56,.115), transparent 31%),
    radial-gradient(circle at 50% 100%, rgba(191,138,28,.08), transparent 38%),
    linear-gradient(115deg, #fffaf0 0%, #fffdf8 42%, #f6f0e7 100%) !important;
  position:relative;
  isolation:isolate;
}

.hero-split::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.38;
  background-image:
    linear-gradient(rgba(10,34,56,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,34,56,.028) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(circle at center, black 0%, black 58%, transparent 90%);
}

.hero-split::after{
  z-index:1;
}

.hero-split-inner{
  position:relative;
  z-index:2;
}

.hero-copy-side::before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(242,109,63,.12), transparent 66%);
  filter:blur(8px);
  transform:translate(-26%, -18%);
  z-index:-1;
  pointer-events:none;
}

.hero-photo-side::before{
  content:"";
  position:absolute;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(10,34,56,.13), transparent 67%);
  filter:blur(10px);
  transform:translate(14%, 2%);
  z-index:-1;
  pointer-events:none;
}

.hero-copy-side,
.hero-photo-side{
  position:relative;
}

.hero-photo-panel{
  box-shadow:
    0 38px 90px rgba(7,26,43,.30),
    0 0 0 1px rgba(255,255,255,.20) inset !important;
}

@media(max-width:760px){
  .hero-split{
    background:
      radial-gradient(circle at 30% 18%, rgba(242,109,63,.12), transparent 30%),
      radial-gradient(circle at 72% 58%, rgba(10,34,56,.10), transparent 34%),
      linear-gradient(180deg, #fffaf0 0%, #fffdf8 52%, #f6f0e7 100%) !important;
  }
  .hero-split::before{
    opacity:.25;
    background-size:56px 56px;
  }
}


/* ===== v22 tricolour bar above footer on all pages ===== */
.footer{
  position:relative;
}

.footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-5px;
  height:5px;
  background:linear-gradient(90deg,#ff9933 0 33.33%,#ffffff 33.33% 66.66%,#138808 66.66% 100%);
  box-shadow:0 -1px 0 rgba(20,38,58,.08);
}


/* ===== v23 single old-style gradient bar above footer ===== */
/* Remove the old Home hero bottom bar so Home does not show two bars */
.hero-split::after{
  display:none !important;
}

/* Use the earlier gradient-style bar above footer on every page */
.footer::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:-16px !important;
  height:16px !important;
  background:linear-gradient(90deg,var(--saffron),#fff,var(--green)) !important;
  opacity:.72 !important;
  box-shadow:none !important;
}


/* ===== v24 subtle premium polish ===== */

/* 1. Smooth page entrance animation */
body{
  animation: pageSoftEnter .55s ease both;
}
@keyframes pageSoftEnter{
  from{opacity:0; transform:translateY(8px);}
  to{opacity:1; transform:none;}
}
.hero-copy-side,
.hero-photo-side,
.timeline-item,
.gallery-card,
.contact-form-wrap,
.contact-details-wrap{
  will-change:transform,opacity;
}

/* 2. Header soft shadow on scroll-supported/sticky state */
.header{
  transition:box-shadow .28s ease, background .28s ease, border-color .28s ease;
}
.header.header-scrolled{
  background:rgba(255,253,248,.985) !important;
  box-shadow:0 14px 34px rgba(10,34,56,.10);
  border-bottom-color:rgba(20,38,58,.08);
}

/* 3. Button hover micro animation */
.btn{
  position:relative;
  overflow:hidden;
}
.btn i{
  transition:transform .22s ease;
}
.btn:hover i,
.btn:focus i{
  transform:translateX(4px);
}
.btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-120%);
  transition:transform .45s ease;
}
.btn:hover::after,
.btn:focus::after{
  transform:translateX(120%);
}

/* 4. Gallery image hover polish */
.gallery-card img,
.gallery-card video{
  transition:transform .5s ease, filter .5s ease;
}
.gallery-card:hover img,
.gallery-card:hover video{
  transform:scale(1.045);
  filter:saturate(1.04) contrast(1.02);
}
.gallery-card::after{
  transition:height .32s ease, background .32s ease;
}
.gallery-card:hover::after{
  height:48%;
  background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.14) 22%,rgba(6,23,36,.88) 100%);
}
.gallery-caption{
  transition:transform .25s ease;
}
.gallery-card:hover .gallery-caption{
  transform:translateY(-3px);
}

/* 5. Form focus polish */
.contact-form input,
.contact-form select,
.contact-form textarea,
.admin-form input,
.admin-form textarea{
  transition:box-shadow .24s ease, background .24s ease, outline .24s ease, transform .24s ease;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus,
.admin-form input:focus,
.admin-form textarea:focus{
  background:#fff;
  box-shadow:0 0 0 3px rgba(242,109,63,.13), 0 10px 24px rgba(10,34,56,.08);
  outline:1px solid rgba(242,109,63,.35);
  transform:translateY(-1px);
}

/* 6. Social icon soft glow */
.socials a,
.contact-socials a{
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
}
.socials a:hover,
.contact-socials a:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(242,109,63,.22), 0 0 0 3px rgba(242,109,63,.10);
  border-color:rgba(242,109,63,.35);
}

/* Active nav subtle premium glow */
.nav a.active{
  box-shadow:0 10px 24px rgba(10,34,56,.14), 0 0 0 3px rgba(242,109,63,.08);
}

/* Gallery modal smoother open */
.gallery-modal.open .modal-card{
  animation: modalPremiumIn .24s ease both;
}
@keyframes modalPremiumIn{
  from{opacity:0; transform:scale(.975) translateY(8px);}
  to{opacity:1; transform:scale(1) translateY(0);}
}

@media (prefers-reduced-motion: reduce){
  body,.btn,.btn i,.btn::after,.gallery-card img,.gallery-card video,.gallery-card::after,.gallery-caption,.socials a,.contact-socials a{
    animation:none !important;
    transition:none !important;
  }
}


/* ===== v25 mobile-first optimization ===== */

/* Improve tap targets and prevent mobile overflow */
html, body{
  max-width:100%;
  overflow-x:hidden;
}
button, a, input, select, textarea{
  -webkit-tap-highlight-color:transparent;
}
.nav a,
.lang-btn,
.btn,
.socials a,
.contact-socials a{
  min-height:42px;
}

/* Better mobile menu */
@media(max-width:980px){
  .nav{
    display:flex !important;
    opacity:0;
    visibility:hidden;
    transform:translateY(-10px);
    pointer-events:none;
    transition:opacity .24s ease, transform .24s ease, visibility .24s ease;
    box-shadow:0 18px 34px rgba(10,34,56,.10);
  }
  .nav.show{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
  }
  .nav a{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:15px;
  }
  .nav a::after{
    content:"›";
    opacity:.45;
    font-size:20px;
    line-height:1;
  }
  .lang-switch{
    width:max-content;
  }
}

/* Mobile hero: cleaner stacking and better proportions */
@media(max-width:760px){
  .hero-split{
    min-height:auto !important;
    padding-bottom:18px;
  }
  .hero-split-inner{
    padding:28px 0 34px !important;
    gap:10px !important;
  }
  .hero-copy-side{
    padding-top:4px;
  }
  .hero-copy-side .eyebrow{
    margin-bottom:12px;
    font-size:10.5px;
    letter-spacing:.12em;
  }
  .hero-name{
    font-size:34px !important;
    line-height:1.06 !important;
  }
  .hero-designation{
    font-size:16.5px !important;
    line-height:1.55 !important;
    margin-top:10px !important;
  }
  .hero-copy-side .btn-row{
    margin-top:22px;
    gap:10px;
  }
  .hero-copy-side .btn{
    padding:13px 16px;
    font-size:14px;
  }
  .hero-photo-side{
    min-height:365px !important;
  }
  .hero-photo-frame{
    height:365px !important;
  }
  .hero-photo-panel{
    width:230px !important;
    height:270px !important;
    border-radius:28px 28px 0 0 !important;
  }
  .hero-main-photo{
    max-height:365px !important;
    max-width:88% !important;
  }
}

/* Very small phones */
@media(max-width:420px){
  .container{
    width:min(93vw,1180px);
  }
  .header .exact-logo,
  .header .exact-logo img{
    max-width:165px !important;
  }
  .head-inner{
    min-height:68px !important;
    padding:9px 0 !important;
  }
  .menu-btn{
    width:42px;
    height:42px;
    border-radius:13px;
  }
  .hero-name{
    font-size:31px !important;
  }
  .hero-designation{
    font-size:15.5px !important;
  }
  html[lang="kn"] .hero-name{
    font-size:28px !important;
  }
  html[lang="kn"] .hero-designation{
    font-size:15px !important;
    line-height:1.7 !important;
  }
  .hero-photo-side{
    min-height:335px !important;
  }
  .hero-photo-frame{
    height:335px !important;
  }
  .hero-photo-panel{
    width:210px !important;
    height:246px !important;
  }
  .hero-main-photo{
    max-height:335px !important;
  }
}

/* Mobile timeline improvements */
@media(max-width:760px){
  .timeline-section{
    padding-top:54px !important;
  }
  .timeline-section .section-head{
    margin-bottom:34px !important;
  }
  .timeline-wrap::before{
    left:28px !important;
  }
  .timeline-item,
  .timeline-item:nth-child(even){
    grid-template-columns:56px 1fr !important;
    gap:12px !important;
    margin-bottom:18px !important;
  }
  .timeline-node,
  .timeline-item:nth-child(even) .timeline-node{
    width:56px !important;
    height:56px !important;
    font-size:9px !important;
    border-width:4px !important;
    padding:6px !important;
  }
  .timeline-card,
  .timeline-item:nth-child(even) .timeline-card{
    padding:17px 16px !important;
    border-radius:18px !important;
    border-left-width:4px !important;
  }
  .timeline-card h3{
    font-size:17px !important;
    margin-bottom:5px !important;
  }
  .timeline-card p{
    font-size:14px !important;
    line-height:1.7 !important;
  }
}

/* Mobile gallery improvements */
@media(max-width:760px){
  .gallery-intro{
    margin-bottom:24px !important;
  }
  .gallery-grid{
    gap:16px !important;
  }
  .gallery-card{
    border-radius:22px !important;
    aspect-ratio:4/4.1 !important;
  }
  .gallery-caption{
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    font-size:13px !important;
  }
  .modal-close{
    right:16px !important;
    top:14px !important;
    width:42px !important;
    height:42px !important;
  }
  .modal-card{
    border-radius:20px !important;
    max-height:86vh !important;
  }
  .modal-content{
    padding:18px !important;
  }
  .modal-content h2{
    font-size:24px !important;
  }
}

/* Mobile contact page improvements */
@media(max-width:760px){
  .contact-section{
    padding:52px 0 !important;
  }
  .contact-layout{
    gap:28px !important;
  }
  .contact-form-wrap h2,
  .contact-details-wrap h2{
    font-size:28px !important;
    margin-bottom:16px !important;
  }
  .contact-form{
    gap:12px !important;
  }
  .contact-form input,
  .contact-form select,
  .contact-form textarea{
    border-radius:18px !important;
    padding:15px 16px !important;
    font-size:15px !important;
  }
  .contact-form textarea{
    min-height:130px !important;
  }
  .contact-row{
    grid-template-columns:28px 1fr !important;
    gap:12px !important;
  }
  .contact-row strong{
    font-size:15px !important;
  }
  .contact-row span,
  .contact-row a{
    font-size:14px !important;
    line-height:1.7 !important;
  }
}

/* Mobile footer: logo, links and icons remain neat */
@media(max-width:760px){
  .footer.footer-simple{
    padding:30px 0 18px !important;
  }
  .footer-simple .footer-top{
    gap:18px !important;
    padding-bottom:20px !important;
  }
  .footer-simple .footer-top .exact-logo,
  .footer-simple .footer-top .exact-logo img{
    max-width:220px !important;
  }
  .footer-simple .footer-links{
    gap:8px 16px !important;
  }
  .footer-simple .footer-links a{
    font-size:14px !important;
  }
  .socials a{
    width:40px !important;
    height:40px !important;
  }
  .copyright{
    font-size:13px !important;
  }
}

/* Use responsive behavior instead of maintaining two separate sites */
@media(min-width:981px){
  .desktop-only{display:block;}
  .mobile-only{display:none;}
}
@media(max-width:980px){
  .desktop-only{display:none;}
  .mobile-only{display:block;}
}


/* ===== v26 privacy policy page ===== */
.privacy-section{
  background:
    radial-gradient(circle at 15% 18%, rgba(242,109,63,.08), transparent 28%),
    radial-gradient(circle at 82% 24%, rgba(10,34,56,.08), transparent 30%),
    linear-gradient(180deg,#fffdf8 0%,#f7f1e7 100%);
}
.privacy-card{
  max-width:980px;
  margin:0 auto;
  padding:42px;
}
.privacy-updated{
  color:var(--muted);
  margin-top:10px;
  margin-bottom:30px;
}
.privacy-content{
  display:grid;
  gap:22px;
}
.privacy-content h2{
  font-size:22px;
  color:#102538;
  margin-bottom:6px;
}
.privacy-content p{
  color:#506173;
  line-height:1.82;
}
html[lang="kn"] .privacy-content h2{
  font-family:Inter,"Noto Sans Kannada",system-ui,sans-serif;
  line-height:1.4;
}
html[lang="kn"] .privacy-content p{
  line-height:1.9;
}
@media(max-width:760px){
  .privacy-card{
    padding:26px 20px;
    border-radius:24px;
  }
  .privacy-content h2{
    font-size:19px;
  }
  .privacy-content p{
    font-size:14.5px;
  }
}


/* ===== v28 mobile home hero order fix ===== */
/* Desktop remains: text left, photo right.
   Mobile becomes: photo first, then name/designation/buttons. */
@media(max-width:1080px){
  .hero-photo-side{
    order:1 !important;
  }
  .hero-copy-side{
    order:2 !important;
  }
}

@media(max-width:760px){
  .hero-split-inner{
    padding-top:22px !important;
  }
  .hero-photo-side{
    order:1 !important;
    margin-bottom:8px !important;
  }
  .hero-copy-side{
    order:2 !important;
  }
}


/* ===== v29 FORCE mobile photo first ===== */
/* Desktop/tablet wide: text left, photo right */
@media(min-width:1081px){
  .hero-split-inner{
    display:grid !important;
    grid-template-columns:1.04fr .96fr !important;
  }
  .hero-copy-side{
    grid-column:1 !important;
    grid-row:1 !important;
    order:initial !important;
  }
  .hero-photo-side{
    grid-column:2 !important;
    grid-row:1 !important;
    order:initial !important;
  }
}

/* Mobile/tablet narrow: photo first, text second */
@media(max-width:1080px){
  .hero-split-inner{
    display:flex !important;
    flex-direction:column !important;
  }
  .hero-photo-side{
    order:1 !important;
    width:100% !important;
  }
  .hero-copy-side{
    order:2 !important;
    width:100% !important;
  }
}


/* ===== v31 gallery admin edit + translation polish ===== */
.admin-item-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.edit-btn{
  border:0;
  background:#edf6ff;
  color:#0a4a78;
  border-radius:12px;
  padding:10px 12px;
  font-weight:900;
  cursor:pointer;
}
.translate-hint{
  grid-column:1/-1;
  font-size:13px;
  color:#66778b;
  line-height:1.6;
  background:#fff7ed;
  border:1px solid var(--line);
  border-radius:16px;
  padding:11px 13px;
}
@media(max-width:760px){
  .admin-item-actions{
    grid-area:btn;
    justify-content:stretch;
  }
  .admin-item-actions button{
    flex:1;
  }
}


/* ===== v32 remove top tricolour bar above header ===== */
.gov-ribbon{
  display:none !important;
}
