:root{--ink:#20394a;--muted:#526873;--green:#326850;--pale:#edf4ef;--blue:#edf3f7;--line:#d4dfdf;--white:#fff;--paper:#fafcfc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font:18px/1.65 "Segoe UI",Arial,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--green)}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #306e9b;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(40px,5vw,68px);max-width:900px;margin-bottom:26px}h2{font-size:clamp(30px,3vw,42px);margin-bottom:22px}h3{line-height:1.35;font-size:23px}p{max-width:72ch}header{background:white;border-bottom:1px solid var(--line)}.container,.header-inner{max-width:1240px;margin:auto;padding-left:36px;padding-right:36px}.header-inner{min-height:108px;display:flex;justify-content:space-between;align-items:center;gap:30px}.wordmark{font-family:Georgia,serif;font-size:29px;font-weight:bold;letter-spacing:-1px;text-decoration:none;white-space:nowrap}.logo-icon{display:inline-block;color:var(--green);font-size:37px;margin-right:9px;vertical-align:middle}.logo-dot{color:var(--green)}.desktop-nav{display:flex;gap:24px}.desktop-nav a{font-size:15px;text-decoration:none;padding:10px 0}.desktop-nav a[aria-current]{border-bottom:2px solid var(--green)}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;padding:65px 0 50px}.intro-label{color:var(--green);font-size:17px;margin-bottom:20px}.lead{font-size:20px;line-height:1.7;color:var(--muted);max-width:53ch}.hero .lead{margin-bottom:30px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:13px 24px;border-radius:7px;background:var(--green);color:white;font-size:17px;font-weight:600;text-decoration:none}.button:hover{background:#244f3d;color:white}.hero-note{font-size:14px;margin:15px 0 0;color:var(--muted)}.hero-art{position:relative;background:#e5eeeb;border-radius:48% 48% 10px 10px;overflow:hidden}.hero-art img{width:100%;height:auto;display:block}.art-caption{position:absolute;bottom:17px;left:12px;right:12px;text-align:center;font:italic 17px Georgia,serif}.promise-strip{display:flex;justify-content:space-between;gap:20px;padding:23px 0;border-block:1px solid var(--line);font-size:16px}.promise-strip span:before{content:'✓';color:var(--green);margin-right:10px}.section{padding:65px 0 0}.section-intro{max-width:75ch;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}.service-card{padding:30px;background:white;border:1px solid var(--line);border-radius:10px;display:flex;align-items:flex-start;flex-direction:column}.brandmark{width:65px;height:65px;border-radius:16px;display:grid;place-items:center;font-size:28px;font-weight:bold;background:#eaf0f8;color:#345883;margin-bottom:24px}.brand-1{background:#eff1ea;color:#596344;font:25px Georgia,serif}.brand-2{background:#f0f2f3;color:#677980;font-weight:400}.service-card p{font-size:17px;color:var(--muted)}dl{font-size:15px;margin-top:5px;flex:1}dt{font-weight:600}dd{margin:0 0 15px;color:var(--muted)}.text-link{font-size:16px;font-weight:600;color:var(--green);margin-top:12px}.muted{font-size:16px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:white;margin-top:28px}table{border-collapse:collapse;width:100%;text-align:left;font-size:16px;min-width:860px}caption{text-align:left;padding:20px;font-weight:600}th,td{padding:20px;border-top:1px solid var(--line);vertical-align:top}thead{background:var(--blue)}tbody th{min-width:170px}.age-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.age-grid>a{padding:28px;border-radius:8px;background:var(--blue);text-decoration:none}.age-grid>a:nth-child(2){background:var(--pale)}.age-grid>a:nth-child(3){background:#f0f1ee}.age-grid strong{display:block;font:40px Georgia,serif;letter-spacing:-1px;margin-bottom:12px}.age-grid p{font-size:17px}.editorial{background:var(--pale);border-left:4px solid var(--green);padding:35px 40px}.editorial h3{font:32px Georgia,serif}.criteria{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.related{display:flex;gap:20px;flex-wrap:wrap}.related a{flex:1;min-width:220px;padding:24px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:600}.page-intro{padding:45px 0 20px}.breadcrumbs{display:flex;gap:12px;padding-top:26px;color:var(--muted);font-size:14px;flex-wrap:wrap}.notice{padding:23px;background:var(--blue);border-left:4px solid #60849e;max-width:85ch}details:not(.mobile-menu){border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:600;min-height:40px}details p{margin:15px 0}.narrow{max-width:800px}main{padding-bottom:80px}footer{background:#eaf0f2;padding:50px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.footer-grid p{font-size:16px;margin-top:14px}.footer-grid a:not(.wordmark){display:block;font-size:15px;padding:5px 0}.footer-heading{font-weight:700}.footer-note{border-top:1px solid #c9d6dc;margin-top:30px;padding-top:20px;font-size:13px;color:var(--muted)}.skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:10}.skip:focus{top:5px}@media(max-width:1050px){.desktop-nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{padding:10px;list-style:none}.mobile-menu nav{position:absolute;right:0;top:55px;z-index:5;background:white;border:1px solid var(--line);padding:20px;width:270px;box-shadow:0 12px 30px #20394a12}.mobile-menu a{display:block;padding:10px}.hero{gap:25px}.service-card{padding:23px}}@media(max-width:720px){body{font-size:17px}.container,.header-inner{padding-left:22px;padding-right:22px}.header-inner{min-height:82px}.wordmark{font-size:25px}.logo-icon{font-size:29px}.hero{grid-template-columns:1fr;padding-top:37px}.hero-art{max-width:480px;margin:0 auto;width:100%}.hero h1{font-size:48px}.lead{font-size:18px}.promise-strip{flex-direction:column;gap:10px}.service-grid,.age-grid,.criteria{grid-template-columns:1fr}.section{padding-top:45px}.footer-grid{grid-template-columns:1fr;gap:20px}.editorial{padding:25px}.page-intro{padding-top:30px}h1{font-size:40px}.related{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.free-page{min-width:0}.free-services{grid-template-columns:repeat(2,minmax(0,1fr))}.free-services h2{font-family:inherit;font-size:23px;font-weight:700;letter-spacing:normal}.free-page summary h3{display:inline;font-size:18px}.free-page .table-wrap{max-width:100%}.free-page td,.free-page th{overflow-wrap:anywhere}@media(max-width:720px){.free-services{grid-template-columns:minmax(0,1fr)}}

.age-guide{min-width:0;overflow-wrap:break-word}.age-guide .guide-toc h2{font-size:28px}.age-guide .guide-toc ul{columns:2;padding-left:24px;margin-bottom:0}.age-guide .guide-toc li{break-inside:avoid;padding:4px 0}.age-guide .guide-places{grid-template-columns:repeat(2,minmax(0,1fr))}.age-guide .guide-places h3{font-size:22px}.age-guide .guide-example{margin:24px 0}.age-guide .guide-example p{margin:0}.age-guide .guide-messages{padding-left:0;list-style:none}.age-guide .guide-messages li{border-left:3px solid var(--green);background:var(--blue);padding:18px 22px;margin:14px 0;max-width:75ch}.age-guide ol>li{padding-left:6px;margin-bottom:18px}@media(max-width:720px){.age-guide .guide-places{grid-template-columns:minmax(0,1fr)}.age-guide .guide-toc ul{columns:1}.age-guide h1{font-size:clamp(32px,9vw,40px)}}

@media(max-width:360px){.age-guide-page .header-inner{gap:8px}.age-guide-page .wordmark{font-size:23px}.age-guide-page .logo-icon{margin-right:5px;font-size:25px}.age-guide-page .mobile-menu nav{width:min(270px,calc(100vw - 44px))}}

.brand-review{min-width:0;overflow-wrap:break-word}.brand-review .review-points{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-review .review-points ul{padding-left:22px}.brand-review .review-points li{margin-bottom:10px}.brand-review .review-toc ul{columns:2;padding-left:24px}.brand-review .review-toc li{break-inside:avoid;padding:4px 0}.brand-review .table-wrap{max-width:100%}.brand-review td,.brand-review th{overflow-wrap:anywhere}.brand-review ol>li{margin-bottom:16px}.brand-review .editorial h2{font-size:30px}.brand-review .editorial h3{font-size:26px}@media(max-width:720px){.brand-review .review-points{grid-template-columns:minmax(0,1fr)}.brand-review .review-toc ul{columns:1}.brand-review h1{font-size:clamp(32px,9vw,40px)}}@media(max-width:360px){.brand-review-page .header-inner{gap:8px}.brand-review-page .wordmark{font-size:23px}.brand-review-page .logo-icon{margin-right:5px;font-size:25px}.brand-review-page .mobile-menu nav{width:min(270px,calc(100vw - 44px))}}

/* Verified fix: the shared header overflowed at 320px on template pages. */
@media(max-width:360px){.header-inner{gap:8px}.wordmark{font-size:23px}.logo-icon{margin-right:5px;font-size:25px}.mobile-menu nav{width:min(270px,calc(100vw - 44px))}}
