/* AMN public release — visual refinements, accessibility and motion */
:root { --navy:#0b1b34; --navy-mid:#132c4c; --blue:#176be0; --blue-light:#287fe9; --accent:#12bad7; --blue-pale:#eff8ff; --gray-light:#f4f8fc; --border:#dfe9f4; }
body{background:#fff; -webkit-font-smoothing:antialiased}
:focus-visible{outline:3px solid #18bedb!important;outline-offset:4px!important}
.header{background:rgba(6,20,40,.95);border-bottom:1px solid rgba(116,197,238,.16)}
.logo-mark{border-radius:10px;background:linear-gradient(135deg,#167ee8,#05afcf);box-shadow:0 5px 15px rgba(10,127,205,.17)}
.header-nav a:hover,.mobile-nav a:hover{background:rgba(19,183,217,.11);color:#fff}
.hero,.page-hero{isolation:isolate;background:radial-gradient(circle at 74% 40%,rgba(10,119,182,.34),transparent 44%),linear-gradient(123deg,#06142a 12%,#0b2442 65%,#07172a 100%)}
.hero::after,.page-hero::after{content:"";pointer-events:none;position:absolute;inset:0;background-image:linear-gradient(rgba(112,203,247,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(112,203,247,.045) 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(90deg,transparent 20%,#000 100%);z-index:0}
.hero>* ,.page-hero>*{position:relative;z-index:1}
.hero-title em{color:#8be6f7}
.hero-title em::after{background:linear-gradient(90deg,#0ab9d7,transparent)}
.page-hero h1,.hero-title{letter-spacing:-.025em;text-wrap:balance}
.page-hero{padding-bottom:76px}
.section-title{letter-spacing:-.025em;text-wrap:balance}
.section-label{color:#0b7faf}
.btn-primary,.form-submit{background:linear-gradient(105deg,#1474e5,#047fa9);border-color:transparent;box-shadow:0 8px 22px rgba(2,63,131,.12)}
.btn-primary:hover,.form-submit:hover{background:linear-gradient(105deg,#075ec4,#066a91)}
.btn-line,.btn-line-h,.btn-line-header{background:#137b9b!important;color:#fff!important}
.btn-line:hover,.btn-line-h:hover,.btn-line-header:hover{background:#0d657e!important}
.service-card,.case-card,.merit-card,.worry-item,.contact-method-card,.form-card{box-shadow:0 8px 28px rgba(12,37,72,.045)}
.service-card,.case-card,.merit-card{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.service-card:hover,.case-card:hover,.merit-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(8,40,75,.12)}
section:nth-of-type(even){background-color:#f7faff}
.footer{background:#061528}
.footer a:hover{text-decoration:underline}
.micro-note{font-size:12px;line-height:1.75;color:#56677d}
.secondary-contact{margin-top:12px;font-size:13px;color:#d5eaf7}
.secondary-contact a{color:#89dbef;text-decoration:underline}
.public-site-breadcrumb{font-size:13px;color:#677b92;margin-bottom:18px}
.public-promo{background:linear-gradient(120deg,#071b35,#133e64);color:#fff;border-radius:20px;padding:28px;margin:38px 0}
.public-promo h2{font-size:clamp(21px,3vw,30px);margin-bottom:10px}
.public-promo p{color:#c7dae8;margin-bottom:18px}
.public-promo a{display:inline-flex;padding:11px 18px;background:#0fadd0;color:white;border-radius:8px;font-weight:700}
.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.public-grid-card{display:flex;flex-direction:column;gap:12px;padding:27px;border:1px solid #deebf5;border-radius:16px;background:white;transition:transform .2s,box-shadow .2s}
.public-grid-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(10,38,78,.1)}
.public-grid-card .icon{font-size:31px}
.public-grid-card h2{color:#09274b;font-size:19px;line-height:1.4}
.public-grid-card p{color:#59697a;font-size:14px;line-height:1.8;flex:1}
.public-grid-card a{color:#076bb7;font-size:14px;font-weight:700}
.public-doc{max-width:860px;margin:auto;font-size:15px;line-height:1.95}
.public-doc h2{font-size:21px;color:#10284b;margin:28px 0 10px}
.public-doc p,.public-doc li{color:#4e6075}
.public-doc ul{padding-left:1.4em}
.public-doc a{color:#0674ab;text-decoration:underline}
@media(max-width:900px){.public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.public-grid{grid-template-columns:1fr}.public-grid-card{padding:22px}.page-hero{padding-top:111px;padding-bottom:54px}.hero,.page-hero{background-size:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
