/* NordPharm responsive refinements: loaded after the existing styles. */
html,body{max-width:100%;overflow-x:clip}img,svg,video{max-width:100%;height:auto}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #2eaa82;outline-offset:3px}
@media(max-width:1100px){.header-main{gap:14px}.brand{flex-basis:230px}.header-actions{gap:10px}.topline{gap:8px}.hero{min-width:0}.hero-copy,.hero-visual,.hero-benefits{min-width:0}.promos{grid-template-columns:repeat(2,minmax(0,1fr))}.promos .promo:last-child{grid-column:1/-1}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.container{width:calc(100% - 28px)}.header-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:0;padding-block:12px}.brand{flex:initial;min-width:0;gap:8px}.brand-cross{font-size:40px}.brand-leaf{font-size:19px;left:12px;top:13px}.brand strong{font-size:clamp(17px,5vw,23px);letter-spacing:-.7px}.brand small{font-size:9px}.header-actions{grid-column:2;grid-row:1}.header-actions a{display:none}.header-center{grid-column:1/-1;grid-row:2;min-width:0}.topline{display:none}.search{width:100%;height:46px}.search input{font-size:16px}.nav-scroll{width:100%;min-height:43px;overscroll-behavior-inline:contain}.nav-scroll a{font-size:12px;padding:13px 12px}.hero{display:grid;grid-template-columns:minmax(0,1fr);margin-top:12px;min-height:0}.hero-copy{padding:26px 20px}.hero h1{font-size:clamp(27px,7vw,40px);line-height:1.14}.hero-copy p{font-size:14px;line-height:1.6}.hero-visual{min-height:175px;overflow:hidden}.hero-cross{font-size:125px}.hero-products{transform:scale(.8);transform-origin:center}.hero-benefits{display:none}.categories{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(100px,30%);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px;scrollbar-width:thin}.categories a{scroll-snap-align:start;min-width:0}.promos{grid-template-columns:minmax(0,1fr);gap:12px}.promos .promo:last-child{grid-column:auto}.promo{min-width:0;min-height:145px}.promo>div:first-child{min-width:0}.promo h2{font-size:19px}.promo-art{font-size:64px}.filters{scrollbar-width:thin;padding-bottom:5px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card{min-width:0;padding:12px}.product-card .btn{white-space:normal;min-height:42px}.advantages{grid-template-columns:repeat(2,minmax(0,1fr))}.advantages>div{min-width:0}.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-bottom{display:flex;position:fixed;inset:auto 0 0;z-index:50;justify-content:space-around;background:#fff;border-top:1px solid #dbe8e1;padding:9px 5px max(9px,env(safe-area-inset-bottom));box-shadow:0 -8px 25px #073f3010}.mobile-bottom a,.mobile-bottom button{min-width:0;flex:1;display:flex;align-items:center;flex-direction:column;gap:2px;border:0;background:none;color:#064e3b;font-size:23px}.mobile-bottom small{font-size:10px}.site-footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}dialog{max-height:80dvh;overflow:auto}}
@media(max-width:390px){.container{width:calc(100% - 20px)}.header-main{padding-inline:0}.brand strong{font-size:17px}.brand small{font-size:8px}.hero-copy{padding:22px 15px}.hero h1{font-size:26px}.promo{padding:14px}.promo h2{font-size:17px}.promo-art{font-size:51px}.product-grid{gap:8px}.product-card{padding:9px}.product-card h3{font-size:12px}.advantages{grid-template-columns:1fr}.popular-grid a{padding:12px}}
/* Admin interface, including user management, on small devices. */
@media(max-width:850px){.admin-layout{display:block}.admin-sidebar{width:100%;padding:16px}.admin-sidebar h2{margin-bottom:10px}.admin-sidebar a{display:inline-flex;margin:3px;padding:10px}.admin-main{min-width:0;padding:22px 16px}.admin-panel,.user-card,.login-card{max-width:100%;padding:18px}.user-grid{grid-template-columns:minmax(0,1fr)}.admin-form{display:grid;grid-template-columns:minmax(0,1fr)}.admin-form label,.admin-form input,.admin-form select{width:100%;min-width:0}.admin-panel button,.login-card button{min-height:44px}.login-card{margin:20px auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
