@font-face{font-family:Raleway;font-style:normal;font-weight:500;font-display:swap;size-adjust:104%;src:url(/fonts/raleway-500.woff2) format("woff2")}:root{--c1:#004080;--c2:#036ca1;--t1:#1a1a1a;--t2:#333;--b1:#f9fafb;--b2:#fff;--b3:#e5e7eb;--s1:0 2px 4px rgba(0,0,0,.1);--s2:0 4px 8px rgba(0,123,255,.1);--sp1:8px;--sp2:16px;--sp3:24px;--f1:Raleway,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--f2:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Helvetica Neue',sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font:16px/1.6 var(--f2);color:var(--t2);background:var(--b1);padding-top:72px}h1,h2,h3,h4,h5,h6{font:500 1.3em/1.3 var(--f1);color:var(--t1);margin-bottom:var(--sp2)}h1{font-size:2.5em;margin:20px 0 var(--sp3)}h2{font-size:1.8em}h3{font-size:1.4em}a{color:var(--c1);text-decoration:underline dotted}a:hover{color:#004085;text-decoration:underline dotted}strong{color:var(--t1);font-weight:400}mark{background:#ffeb3b;border-radius:2px;color:inherit;font-weight:400;padding:.1em .2em}ol,ul{margin-bottom:var(--sp2);padding-left:32px}li{margin-bottom:var(--sp1)}.simple-nav{position:fixed;inset:0 0 auto;background:var(--b2);box-shadow:var(--s1);z-index:1000;height:72px}.nav-container{display:flex;align-items:center;gap:20px;height:100%;max-width:1200px;margin:0 auto;padding:0 20px}.nav-container>a{display:block;line-height:0}.nav-logo{height:72px;width:auto;object-fit:contain;object-position:0 50%}.nav-hamburger{display:none;align-items:center;background:0;border:0;cursor:pointer;justify-content:center;min-height:44px;min-width:44px;padding:var(--sp1)}.nav-hamburger svg{width:30px;height:30px}.nav-links{display:flex;align-items:center;gap:var(--sp3);list-style:none;margin:0 0 0 auto;padding:0}.nav-links li{margin:0}.language-toggle{position:relative}.lang-current{display:flex;align-items:center;background:0;border:1px solid #ddd;border-radius:4px;color:var(--c2);cursor:pointer;font-weight:400;gap:var(--sp1);min-height:44px;min-width:44px;padding:10px var(--sp2);transition:.3s}.lang-current:hover{background:#f0f0f0;border-color:var(--c2)}.lang-options{display:none;background:var(--b2);border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;margin-top:var(--sp1);min-width:126px;padding:var(--sp1) 0;position:absolute;right:0;top:100%}.lang-current[aria-expanded=true]+.lang-options,.language-toggle:hover .lang-options{display:block}.lang-options a{color:var(--t2);display:block;min-height:44px;padding:12px var(--sp2);text-decoration:underline dotted;transition:.2s}.lang-options a:hover{background:#f5f5f5;color:var(--c2)}.breadcrumb-nav{background:#f5f5f5;border-bottom:1px solid var(--b3)}.breadcrumbs{display:flex;align-items:center;font-size:14px;gap:5px;list-style:none;margin:0 auto;max-width:1200px;padding:10px 20px;color:var(--t2)}.breadcrumbs li:not(:last-child):after{content:"›";color:#444;margin:0 .5rem}.breadcrumbs a{color:#0056b3}.breadcrumbs a:hover{text-decoration:underline dotted}.container,.article-wrapper,.wrapper{margin:0 auto;max-width:1200px}.container{padding:0 15px}.article-wrapper{padding:0 20px}article{background:var(--b2);box-shadow:var(--s1);margin:0 auto;max-width:1000px;padding:20px}article header{border-bottom:2px solid var(--b3);margin-bottom:40px;padding-bottom:20px;text-align:left}.teaser{margin-bottom:32px}.teaser>div{margin-bottom:var(--sp3)}.teaser p{font-size:1.05em;line-height:1.7}figure{background:var(--b2);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);margin:var(--sp3) 0;overflow:hidden}figure img,figure picture{display:block;max-width:100%}figure img{aspect-ratio:auto}figcaption{background:#f8f9fa;border-top:1px solid #e9ecef;color:var(--t2);font-size:.9em;font-style:italic;padding:12px var(--sp2);text-align:center}figure.section-image,figure.wedding-image,figure.utility-hero{float:right;margin:0 0 1.5rem 1.5rem;max-width:400px}figure.section-image{width:100%}.float-img{border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);float:right;margin:0 0 20px 20px;max-width:300px;width:40%}.homepage-section{clear:both;margin:0 -20px;overflow:auto;padding:60px 20px}.homepage-section.section-2,.homepage-section.section-4,.homepage-section.section-6{background:var(--b1)}.homepage-section h2{border-bottom:3px solid var(--b3);font-size:2.2em;line-height:1.2;margin-bottom:30px;padding-bottom:15px;position:relative}.homepage-section h2:after{background:linear-gradient(90deg,var(--c1),#06c);border-radius:2px;bottom:-3px;content:"";height:3px;left:0;position:absolute;width:80px}.homepage-section.section-2 figure.wedding-image,.homepage-section.section-4 figure.wedding-image{float:left;margin:0 1.5rem 1.5rem 0}.homepage-section ol,.homepage-section p,.homepage-section ul{overflow:auto}.audio-term{align-items:center;background:#e0f2fe;border-radius:4px;color:var(--c2);cursor:pointer;display:inline-flex;font-size:inherit;gap:.3em;line-height:inherit;margin:0 2px;min-height:44px;min-width:44px;padding:var(--sp1) 12px;position:relative;transition:.3s;white-space:nowrap}.audio-term:before{align-items:center;background:#bfdbfe;border-radius:50%;color:#1d4ed8;content:"▶";display:inline-flex;font-size:7px;height:14px;justify-content:center;margin-right:3px;position:relative;left:.5px;top:-1px;width:14px}.audio-term:after{background:var(--c1);border-radius:6px;bottom:100%;box-shadow:var(--s2);color:#fff;content:attr(data-display-text,"Click to play pronunciation");font:400 14px/1.4 var(--f2);margin-bottom:var(--sp1);max-width:250px;opacity:0;padding:var(--sp1) 14px;pointer-events:none;position:absolute;left:50%;transform:translateX(-50%);visibility:hidden;white-space:pre-line;z-index:1000}.audio-term:hover,.audio-term.show-tooltip{background:#dbeafe;color:#1d4ed8}.audio-term:hover:before,.audio-term.show-tooltip:before{background:#3b82f6;color:#fff}.audio-term.playing{background:#dcfce7;color:#166534}.audio-term.playing:before{background:#22c55e;color:#fff;content:"⏸";left:0}.audio-term.loading{cursor:wait;opacity:.7}.audio-term.loading:before{animation:spin 1s linear infinite;content:"⟳"}@keyframes bounceIn{0%{opacity:0;transform:translateX(-50%) translateY(10px) scale(.3)}50%{opacity:1;transform:translateX(-50%) translateY(-8px) scale(1.05)}70%{transform:translateX(-50%) translateY(-2px) scale(.95)}to{opacity:1;transform:translateX(-50%) translateY(-4px) scale(1)}}@keyframes bounceOut{0%{opacity:1;transform:translateX(-50%) translateY(-4px) scale(1)}20%{transform:translateX(-50%) translateY(-8px) scale(1.05)}to{opacity:0;transform:translateX(-50%) translateY(10px) scale(.3)}}.audio-term.show-tooltip:after,.audio-term:hover:after{animation:bounceIn .5s cubic-bezier(.68,-.55,.265,1.55) forwards;opacity:1;visibility:visible}.audio-term.bounce-out:after{animation:bounceOut .4s cubic-bezier(.68,-.55,.265,1.55) forwards}@keyframes spin{to{transform:rotate(360deg)}}.pronunciation-balloon{background:#2c3e50;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.3);color:#fff;line-height:1.5;min-width:160px;padding:var(--sp2) 20px;pointer-events:none;position:absolute;text-align:center;z-index:1000}.pronunciation-header{color:#d4dfe8;font:400 12px/1 var(--f2);letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.pronunciation-phonetic{color:#fff;font:400 18px var(--f2);margin-bottom:4px}.pronunciation-ipa{color:#e2e8f0;font:italic 15px 'Lucida Sans Unicode','Arial Unicode MS',sans-serif;margin-bottom:var(--sp1)}.pronunciation-countdown{color:#4ade80;font:400 16px var(--f2);font-variant-numeric:tabular-nums}.pronunciation-countdown.ending-soon{animation:pulse .5s ease-in-out infinite;color:#fb923c}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}h2.accordion{display:flex;align-items:center;background:var(--b2);border:1px solid #d1d5db;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.05);color:var(--t1);cursor:pointer;font:500 20px var(--f1);margin:var(--sp2) 0 var(--sp1);min-height:44px;padding:var(--sp3) 72px var(--sp3) var(--sp3);position:relative;transition:.3s}h2.accordion:hover{background:#f8f9fa;border-color:var(--c1);box-shadow:var(--s2)}h2.accordion:after{background:#f1f3f4 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" stroke="%23666" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 4.5 6 7.5 9 4.5"></polyline></svg>') 50%/no-repeat;border-radius:50%;content:"";height:32px;position:absolute;right:var(--sp3);top:50%;transform:translateY(-50%);transition:.3s cubic-bezier(.4,0,.2,1);width:32px}h2.accordion:hover:after{background:var(--c1) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 4.5 6 7.5 9 4.5"></polyline></svg>') 50%/no-repeat}h2.accordion.active{background:#f8f9fa;border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:var(--c1);color:#374151;margin-bottom:0}h2.accordion.active:after{background:var(--c1) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 4.5 6 7.5 9 4.5"></polyline></svg>') 50%/no-repeat;transform:translateY(-50%) rotate(180deg)}.accordion-content{background:var(--b2);border:1px solid #e5e7eb;border-radius:0 0 8px 8px;margin-bottom:var(--sp2);padding:var(--sp3)}.js-enabled .accordion-content{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease-out,opacity .3s ease-out,padding .3s ease-out;padding-top:0;padding-bottom:0;border-top-width:0}.js-enabled .accordion-content.active{max-height:5000px;opacity:1;background:var(--b2);border:1px solid var(--c1);border-top:0;border-radius:0 0 8px 8px;box-shadow:var(--s2);margin-bottom:var(--sp2);padding:var(--sp3)}.accordion-content:after{clear:both;content:"";display:table}.accordion-content h3{border-bottom:2px solid var(--b3);font:500 18px var(--f1);margin:var(--sp3) 0 var(--sp2);padding-bottom:var(--sp1)}.accordion-content h3:first-child{margin-top:0}.accordion-content p{color:var(--t2);line-height:1.6;margin-bottom:var(--sp2)}.accordion-content ul{margin-bottom:var(--sp2)}.accordion-content li{color:var(--t2);line-height:1.6;margin-bottom:var(--sp1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}footer{background:#1a252f;color:#ecf0f1;margin-top:60px;padding:40px 0 0}footer>div:first-child{padding-bottom:32px}footer>div:first-child>div{display:flex;flex-wrap:wrap;gap:40px;margin:0 auto;max-width:1200px;padding:0 20px}footer>div:first-child>div>div{flex:1;min-width:280px}footer p{line-height:1.7;margin-bottom:var(--sp2)}footer h3{color:#fff;font-size:1.2em;margin-bottom:var(--sp2)}footer ul{list-style:none;padding:0}footer ul li{margin-bottom:10px}footer a{color:#a8d0ff;text-decoration:underline dotted;transition:.3s}footer a:hover{color:#d4e6ff}footer .social{display:flex;gap:var(--sp2);margin-top:var(--sp2)}footer .social a{align-items:center;background:#34495e;border-radius:50%;display:inline-flex;height:44px;justify-content:center;transition:.3s;width:44px}footer .social a:hover{background:#3498db}footer .social svg{color:#ecf0f1;height:20px;width:20px}footer .btm{border-top:1px solid #34495e;padding:20px 0}footer .btm>div{margin:0 auto;max-width:1200px;padding:0 20px}footer .btm>div>div{display:flex;flex-wrap:wrap;gap:var(--sp2);justify-content:space-between;align-items:center}footer .btm ul{display:flex;flex-wrap:wrap;gap:var(--sp3);margin:0}footer .btm ul li{margin:0}footer .btm div:last-child{color:#d4dfe8;font-size:.9em}.emoji-callout{background:#fff8dc;border:1px solid #f4e4a1;border-radius:3px;box-shadow:2px 2px 8px rgba(0,0,0,.1);clear:right;float:right;font-size:14px;line-height:1.5;margin:20px 0 20px 20px;padding:var(--sp2) 20px;position:relative;transform:rotate(1deg);width:40%}.emoji-callout:nth-of-type(2n){transform:rotate(-1deg)}.budget-tip{background:#d1ecf1;border:1px solid #bee5eb;border-radius:4px;margin:1.5rem 0;padding:1rem}.budget-tip strong{color:#0c5460}.currency{border-bottom:1px dotted #505050;cursor:help;position:relative}.currency:after{content:"$";background:#1976d2;border-radius:6px;bottom:100%;box-shadow:0 2px 8px rgba(25,118,210,.3);color:#fff;font:400 14px var(--f2);margin-bottom:8px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;left:50%;transform:translateX(-50%);visibility:hidden;white-space:nowrap;z-index:1000}.currency:hover:after{opacity:1;visibility:visible}.table-of-contents h2{background:0;border:0;box-shadow:0;cursor:default;padding:16px 0}.table-of-contents h2:after{content:none}.table-of-contents h2:hover{background:0;border:0;box-shadow:0}.skip-to-content{background:#000;color:#fff;left:-9999px;padding:1em;position:absolute;text-decoration:none;z-index:999}.skip-to-content:focus{left:50%;top:0;transform:translateX(-50%)}.audio-term:focus,h2.accordion:focus,button:focus-visible,input:focus-visible{outline:2px solid var(--c1);outline-offset:2px}@media (max-width:768px){body{font-size:15px;padding-top:60px}.simple-nav{height:60px}.nav-container{padding:0 15px}.nav-hamburger{display:flex}.nav-links{align-items:flex-start;background:var(--b2);box-shadow:0 2px 10px rgba(0,0,0,.1);display:none;flex-direction:column;gap:16px;left:0;padding:20px;position:absolute;right:0;top:100%}.nav-links.active{display:flex}.nav-links li{width:100%}.nav-links li a{display:block;font-size:16px;padding:10px 0}#breadcrumbs ol{font-size:13px;padding:8px 15px}h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.2em}article{padding:15px}h2.accordion{font-size:18px;min-height:44px;padding:16px 56px 16px 16px}h2.accordion:after{height:28px;right:16px;width:28px}.accordion-content.active{padding:16px}.emoji-callout,.float-img,figure.section-image,figure.wedding-image,figure.utility-hero{float:none;margin:16px 0;max-width:100%;width:100%}footer>div:first-child>div{flex-direction:column;gap:24px}footer .btm>div>div{flex-direction:column;text-align:center}footer .btm ul{justify-content:center}.homepage-section{margin:0 -15px;padding:40px 15px}.homepage-section h2{font-size:1.8em;margin-bottom:20px}.homepage-section figure.wedding-image,.homepage-section.section-2 figure.wedding-image,.homepage-section.section-4 figure.wedding-image{float:none;margin:20px auto;max-width:100%}}@media (max-width:480px){body{font-size:16px}h1{font-size:1.75em}h2.accordion{font-size:16px;min-height:44px;padding:12px 48px 12px 12px}.accordion-content.active{padding:12px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}.accordion-content{animation:none}}@media print{#breadcrumbs,.simple-nav,footer{display:none}body{background:#fff;padding-top:0}article{box-shadow:0;max-width:100%}h2.accordion{page-break-inside:avoid}.accordion-content{display:block}}

/* UI/UX Fixes */
/* Nav links - remove underlines */
.nav-links a{text-decoration:none;}

/* Language switcher - remove gap, fit on screen, remove borders/underlines */
.lang-options{max-width:140px;overflow-y:auto;max-height:400px;margin-top:0;padding-top:0;}
.lang-options a{text-decoration:none;border:0;}
.lang-current{text-decoration:none;}

/* Footer culture section - heading above list */
.footer-culture{display:flex;flex-direction:column;gap:var(--sp2);}
.footer-culture .heading{color:#fff;font-size:1.2em;margin-bottom:0;}
.footer-culture ul{margin:0;padding:0;list-style:none;}

/* Footer bottom - navigation and copyright on same line */
.container.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--sp3);}
.container.footer-bottom nav{flex:1;}
.container.footer-bottom nav ul{display:flex;flex-wrap:wrap;gap:var(--sp3);margin:0;padding:0;list-style:none;}
.container.footer-bottom nav ul li{margin:0;}
.container.footer-bottom .footer-copyright{flex-shrink:0;white-space:nowrap;}

/* All section images float right */
figure.section-image{float:right;margin:0 0 var(--sp3) var(--sp3);max-width:400px;}

/* Teaser clearfix - ensure accordions appear below teaser */
.teaser:after{content:"";display:table;clear:both;}

/* Language switcher - button matches dropdown width */
.lang-current{min-width:126px;justify-content:space-between;}

/* Responsive */
@media (max-width:768px){
  .container.footer-bottom{flex-direction:column;text-align:center;gap:var(--sp2);}
  .container.footer-bottom nav ul{justify-content:center;}
  figure.section-image{float:none;margin:var(--sp3) auto;max-width:100%;}
}

/* Form elements - WCAG 2.5.5 touch target size (44x44px minimum) */
form{max-width:600px;margin:0 auto;}
form label{display:block;font-weight:400;margin-bottom:var(--sp1);color:var(--t1);}
/* Base style for ALL inputs (works even when HTML minifier strips type="text") */
form input,form textarea,form select{width:100%;min-height:44px;padding:12px var(--sp2);font:inherit;font-size:16px;border:1px solid #d1d5db;border-radius:4px;margin-bottom:var(--sp2);transition:.3s;box-sizing:border-box;}
/* Reset for special input types that shouldn't have text-input styling */
form input[type="radio"],form input[type="checkbox"]{width:auto;min-height:auto;padding:0;border:0;border-radius:0;margin-bottom:0;}
form input[type="hidden"]{display:none;}
form input:focus,form textarea:focus,form select:focus{border-color:var(--c1);outline:2px solid var(--c1);outline-offset:2px;}
form textarea{min-height:120px;resize:vertical;}
/* Buttons - override base input styles */
form button,form input[type="submit"]{width:auto;min-height:44px;min-width:44px;padding:12px var(--sp3);background:var(--c1);color:#fff;border:0;border-radius:4px;font:600 16px var(--f2);cursor:pointer;transition:.3s;}
form button:hover,form input[type="submit"]:hover{background:#003366;}

/* WCAG AA: ensure <strong> inherits light text in dark footer (#1a252f bg) */
footer strong{color:inherit}

/* CLS fixes */
h2.accordion{min-height:4.5em}
.teaser-hero img,.section-image img,.utility-hero img{width:100%;height:auto}
figure.utility-hero{aspect-ratio:1}

/* perf: render offscreen sections lazily */
article > section{content-visibility:auto;contain-intrinsic-size:auto 600px}
.homepage-section,.faq-section,.content-section{content-visibility:auto;contain-intrinsic-size:auto 800px}
article > section:nth-child(-n+3){content-visibility:visible;contain-intrinsic-size:none}
