/* eMarketing Foundation — shared styles */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:92px;}
body{margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color:#16243f;font-family:'Hanken Grotesk',sans-serif;}
img{max-width:100%;display:block;}

.emf-btn-primary:hover{background:#0f1a30 !important;transform:translateY(-2px);box-shadow:0 16px 34px rgba(22,36,63,0.30) !important;}
.emf-btn-secondary:hover{border-color:#16243f !important;background:#f7f9fc !important;}
.emf-btn-gold:hover{background:#c8942f !important;transform:translateY(-2px);}
.emf-card-cta:hover{background:#1d3157 !important;}
.emf-card-cta-gold:hover{background:#c8942f !important;}
.emf-faq summary{list-style:none;cursor:pointer;}
.emf-faq summary::-webkit-details-marker{display:none;}
.emf-faq[open] .emf-faq-icon{transform:rotate(45deg);}
.emf-howcard:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(22,36,63,0.10) !important;}
.emf-summary-hover summary:hover{color:#2454a6 !important;}
.emf-input,.emf-select,.emf-textarea{width:100%;font-family:'Hanken Grotesk',sans-serif;font-size:16px;color:#16243f;background:#fff;border:1px solid #d4dce8;border-radius:10px;padding:13px 15px;transition:border-color .18s ease,box-shadow .18s ease;}
.emf-textarea{resize:vertical;min-height:108px;line-height:1.55;}
.emf-input:focus,.emf-select:focus,.emf-textarea:focus{outline:none;border-color:#2454a6;box-shadow:0 0 0 3px rgba(36,84,166,0.13);}
.emf-input::placeholder,.emf-textarea::placeholder{color:#9aa5b8;}
.emf-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%23667085' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 15px center;padding-right:40px;cursor:pointer;}
.emf-check{display:flex;align-items:center;gap:12px;padding:12px 15px;border:1px solid #d4dce8;border-radius:10px;cursor:pointer;background:#fff;transition:all .15s ease;}
.emf-check:hover{border-color:#2454a6;background:#f4f7fc;}
.emf-btn-primary:hover{background:#0f1a30 !important;transform:translateY(-1px);}
.emf-btn-ghost:hover{background:#eef2f8 !important;}
.emf-btn-primary:hover{background:#0f1a30 !important;transform:translateY(-2px);}
.emf-reserve:hover{border-color:#2454a6 !important;background:#f4f7fc !important;}
.emf-btn-gold:hover{background:#c8942f !important;transform:translateY(-1px);}
.emf-upcard{transition:all .22s ease;}
.emf-upcard:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(22,36,63,0.12) !important;}
.emf-upcta:hover{background:#0f1a30 !important;}
.emf-decline:hover{color:#16243f !important;}
.emf-navlink:hover { color:#16243f !important; }
.emf-navlink::after { content:""; position:absolute; left:0; bottom:-6px; width:0; height:2px; background:#d9a441; transition:width .25s ease; }
.emf-navlink:hover::after { width:100%; }
.emf-applybtn:hover { background:#0f1a30 !important; transform:translateY(-1px); }
.emf-desktop-nav { display:flex; }
.emf-burger { display:none; }
.emf-logo { display:flex; flex-direction:column; line-height:1; }
.emf-logo .l1 { font-family:'Hanken Grotesk',sans-serif; font-size:19px; font-weight:600; letter-spacing:-0.012em; color:#16243f; }
.emf-logo .l1 .o { color:#e2701c; }
.emf-logo .l2 { font-family:'Hanken Grotesk',sans-serif; font-size:22px; font-weight:800; letter-spacing:-0.018em; color:#16243f; margin-top:2px; }
.emf-tagline { font-family:'IBM Plex Mono',monospace; font-size:9.5px; line-height:1.45; letter-spacing:0.03em; color:#7a879b; text-transform:uppercase; max-width:160px; border-left:1px solid #d6deec; padding-left:14px; }
@media (max-width: 860px){ .emf-desktop-nav { display:none !important; }
.emf-burger { display:flex !important; }
.emf-tagline { display:none !important; }
.emf-footlink:hover { color:#d9a441 !important; }
.emf-logo-foot { display:inline-flex; flex-direction:column; line-height:1; margin-bottom:16px; }
.emf-logo-foot .l1 { font-family:'Hanken Grotesk',sans-serif; font-size:22px; font-weight:600; letter-spacing:-0.012em; color:#ffffff; }
.emf-logo-foot .l1 .o { color:#ee8a3e; }
.emf-logo-foot .l2 { font-family:'Hanken Grotesk',sans-serif; font-size:26px; font-weight:800; letter-spacing:-0.018em; color:#ffffff; margin-top:2px; }
