/* Unified responsive layer. Desktop retains the main site; compact screens use the mobile navigation language. */
.fr-search,.fr-bottom-nav,.fr-search-panel{display:none}

@media (max-width:900px){
 :root{--fr-header:72px;--fr-bottom:66px}
 body{padding-bottom:var(--fr-bottom)}
 header{
  position:fixed;inset:0 0 auto;height:var(--fr-header);padding:8px 16px;
  grid-template-columns:1fr auto 1fr;background:rgba(246,240,230,.97);
  border-bottom:1px solid rgba(20,20,20,.12);backdrop-filter:blur(12px)
 }
 header .brand-lockup{grid-column:2;justify-content:center;gap:8px}
 header .brand-lockup .brand-main{height:34px}
 header .brand-lockup .brand-tourism{height:29px}
 header .brand-lockup .brand-government{height:31px}
 header .brand-lockup span+span,header .brand-lockup a+span{padding-left:8px}
 header nav.main,header>.pill,header>.burger{display:none!important}
 .fr-search{
  grid-column:3;justify-self:end;display:grid;width:44px;height:44px;padding:0;
  place-items:center;border:1px solid rgba(20,20,20,.3);border-radius:50%;background:#fbf7ee;cursor:pointer
 }
 .fr-search span{width:14px;height:14px;border:1.7px solid #0a2a43;border-radius:50%;position:relative}
 .fr-search span::after{content:"";position:absolute;width:6px;height:1.7px;background:#0a2a43;right:-5px;bottom:-2px;transform:rotate(45deg)}
 main{padding-top:var(--fr-header)}
 .film{height:calc(100svh - var(--fr-header) - var(--fr-bottom));min-height:560px}
 .fr-bottom-nav{
  position:fixed;z-index:90;left:0;right:0;bottom:0;height:var(--fr-bottom);display:grid;
  grid-template-columns:repeat(5,1fr);background:rgba(251,247,238,.98);border-top:1px solid rgba(20,20,20,.14);
  box-shadow:0 -8px 24px rgba(20,20,20,.08);padding-bottom:env(safe-area-inset-bottom)
 }
 .fr-bottom-nav a,.fr-bottom-nav button{
  border:0;background:transparent;color:#5f625d;text-decoration:none;font:500 10px/1.1 "DM Sans",sans-serif;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer
 }
 .fr-bottom-nav span{font-size:19px;line-height:1;color:#344c45}
 .fr-bottom-nav .on{color:#0f5548}
 .fr-search-panel{position:fixed;z-index:95;inset:0;align-items:flex-start;padding:92px 16px 16px;background:rgba(10,42,67,.56);backdrop-filter:blur(8px)}
 .fr-search-panel.open{display:flex}
 .fr-search-form{width:min(100%,520px);margin:0 auto;background:#fbf7ee;border-radius:18px;padding:20px;box-shadow:0 20px 55px rgba(0,0,0,.2)}
 .fr-search-form label{display:block;font:400 1.35rem "DM Serif Display",serif;margin-bottom:12px}
 .fr-search-form>div{display:grid;grid-template-columns:1fr auto;border:1px solid rgba(20,20,20,.2);border-radius:10px;overflow:hidden}
 .fr-search-form input{min-width:0;border:0;background:#fff;padding:14px;font:400 14px "DM Sans",sans-serif;outline:0}
 .fr-search-form div button{border:0;background:#0f5548;color:#fff;padding:0 16px;font-weight:700}
 .fr-search-close{margin-top:12px;border:0;background:transparent;text-decoration:underline;cursor:pointer}
 .menu{padding-bottom:calc(var(--fr-bottom) + 24px)}
 footer{padding-bottom:calc(4rem + var(--fr-bottom))}
}

@media (max-width:520px){
 header{padding-inline:12px}
 header .brand-lockup{gap:5px}
 header .brand-lockup .brand-main{height:28px}
 header .brand-lockup .brand-tourism{height:24px}
 header .brand-lockup .brand-government{height:26px}
 header .brand-lockup span+span,header .brand-lockup a+span{padding-left:5px}
 .fr-search{width:42px;height:42px}
 .wrap{width:min(100% - 32px,1180px)}
 .pad{padding:48px 0}
 section+section{margin-top:0}
}
