/* v2 tasarım — TÜM sayfalarda ortak: reset, header/nav, footer, bottom-nav, shell genişliği.
   Sayfaya özel stiller (hero, kartlar, formlar vb.) ilgili view dosyasının kendi <style> bloğunda kalır. */

*{box-sizing:border-box}
html{scroll-behavior:smooth}
[x-cloak]{display:none!important}
body{margin:0;background:#fff;color:#0e1b3b;font-family:"Manrope","Manrope Variable",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:500;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,select,label{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
a:hover{color:#163cc0}
img{display:block;max-width:100%}

.leaflet-container{font-family:"Manrope",ui-sans-serif,system-ui,sans-serif;background:#eef2f6}
.leaflet-control-attribution{font-size:9px!important;background:rgba(255,255,255,.82)!important}

/* Section padding — genel amaçlı, çoğu sayfada kullanılacak */
.section-pad{padding-top:44px;padding-bottom:44px}

/* Breadcrumb */
.breadcrumbs a:hover{color:#2254f3}

/* Ana menü */
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;border-radius:10px;background:#2254f3;transition:right 180ms ease}
.main-nav a:hover::after,.main-nav a:focus-visible::after,.main-nav a.active::after{right:0}
.main-nav a:hover{color:#0e1b3b}
.main-nav a.active{color:#2254f3}
.nav-group{position:relative;display:flex;align-items:center}
.nav-group::after{content:"";position:absolute;top:100%;left:0;right:0;height:15px}
.nav-sub{position:absolute;z-index:70;top:100%;right:0;display:none;min-width:190px;margin-top:13px;padding:7px;border:1px solid #e5e9f2;border-radius:12px;background:#fff;box-shadow:0 16px 36px rgba(45,55,80,.14)}
.nav-group:hover .nav-sub,.nav-group:focus-within .nav-sub{display:grid}
.nav-sub a{display:block;padding:9px 11px;border-radius:8px;color:#43506d!important;font-size:13px;font-weight:700}
.nav-sub a:hover{background:#f2f6fb;color:#2254f3!important}
.nav-sub a::after{display:none!important}
.nav-toggle-btn{display:none;align-items:center;justify-content:center;width:30px;height:30px;border:0;background:transparent;color:#6b7690;cursor:pointer;padding:0;flex:0 0 auto}
.nav-toggle-btn svg{transition:transform 160ms ease}
.nav-toggle-btn.open svg{transform:rotate(180deg)}
.nav-sub.open{display:grid}

.login-button:hover{background:#163cc0;transform:translateY(-1px);color:#fff}

.footer-grid a:hover,.footer-grid .brand:hover{color:#fff}

.bottom-nav a:hover{color:#2254f3}

@media (max-width:1180px){
.header-inner{gap:22px!important}
.main-nav{gap:16px!important}
.main-nav a{font-size:12px!important}
}
@media (max-width:1150px){
.nav-group{flex-direction:column!important;align-items:stretch!important}
.nav-sub{position:static!important;display:none!important;min-width:0!important;margin:0!important;padding:0 0 4px 12px!important;border:0!important;background:transparent!important;box-shadow:none!important}
.nav-sub.open{display:grid!important}
.nav-sub a{padding:10px 12px!important}
.nav-toggle-btn{display:inline-flex!important}
.main-nav{position:absolute!important;top:88px!important;left:24px!important;right:24px!important;z-index:60!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:10px!important;border:1px solid #e5e9f2!important;border-radius:12px!important;background:#fff!important;box-shadow:0 16px 40px rgba(45,55,80,.13)!important;margin-left:0!important}
.main-nav.is-open{display:flex!important}
.main-nav a{padding:12px!important;font-size:14px!important}
.main-nav a::after{display:none!important}
.mobile-menu-button{display:grid!important;order:2}
.header-actions{margin-left:auto!important}
}
@media (max-width:900px){
.shell{width:min(100% - 32px,760px)!important}
.site-header{height:70px!important}
.brand{gap:7px!important}
.brand-mark{transform:scale(.86)!important;transform-origin:left center!important;margin-right:-5px!important}
.site-header .brand-copy strong{font-size:21px!important}
.site-header .brand-copy small{display:none!important}
.main-nav{top:70px!important;left:16px!important;right:16px!important}
.language span,.language svg:last-child{display:none!important}
.header-actions{margin-left:auto!important;gap:3px!important}
.login-button{order:2;height:38px!important;padding:0 12px!important;font-size:12px!important}
.footer-grid{grid-template-columns:2fr 1fr 1fr!important}
}
@media (max-width:620px){
.shell{width:min(100% - 24px,480px)!important}
.site-header{height:64px!important}
.brand{gap:6px!important}
.brand-mark{width:36px!important;transform:scale(.75)!important;margin-right:-8px!important}
.site-header .brand-copy strong{font-size:18px!important}
.header-actions .language,.header-actions .notification{display:none!important}
.login-button{order:3}
.mobile-menu-button{order:2}
.main-nav{top:64px!important}
.breadcrumbs{margin-bottom:16px!important}
.section-pad{padding-top:28px!important;padding-bottom:30px!important}
.footer-grid{grid-template-columns:1fr 1fr!important;gap:26px!important}
.footer-grid>div:first-child{grid-column:1 / -1!important}
footer .brand-mark{margin-right:-1px!important;transform:scale(.98)!important}
footer .brand-copy strong{font-size:26px!important}
.copyright{flex-direction:column!important;gap:7px!important}
}
@media (max-width:760px){.bottom-nav{display:grid!important}body{padding-bottom:70px!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
