/* Destination-source hub: extends the shared inner-page system. */
.reg-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}
.reg-hero h1{font-size:clamp(48px,5.2vw,76px);line-height:1.05;letter-spacing:-3px;margin:22px 0 26px}
.reg-hero h1 span{color:#5c766b}
.reg-lead{max-width:650px;font-size:17px;line-height:1.75;color:var(--muted);margin-bottom:32px}
.reg-principle{background:#18302c;color:#f6f8ef;padding:32px}
.reg-principle-label{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;color:#b5c9bd;display:block;margin-bottom:24px}
.reg-principle>div{display:flex;gap:22px;padding:23px 0;border-top:1px solid #3c534c;align-items:center}
.reg-principle>div>span{font-family:var(--mono);font-size:12px;color:#f99778}
.reg-principle strong,.reg-principle small{display:block}
.reg-principle strong{font-size:19px;font-weight:600;margin-bottom:4px}
.reg-principle small{font-size:12px;color:#bbcec2;line-height:1.6}
.reg-principle-note{border-top:1px solid #3c534c;padding-top:22px;color:#bbc9bf;font-size:12px;line-height:1.7}
.reg-notice{display:flex;gap:20px;background:#eaf0e7;border-left:3px solid #7f9884;padding:26px 30px;margin-bottom:80px}
.reg-notice>span{display:flex;width:22px;height:22px;border:1px solid #6d8774;border-radius:50%;align-items:center;justify-content:center;flex:0 0 22px;font-family:var(--mono);font-size:13px}
.reg-notice strong{font-size:15px;font-weight:600}
.reg-notice p{font-size:13px;line-height:1.8;color:#506459;margin-top:8px}
.reg-notice .reg-review-date{font-size:11px}
.reg-directory{padding-bottom:70px}
.reg-directory-top{display:flex;justify-content:space-between;align-items:end;gap:30px}
.reg-directory-top h2{font-size:36px;line-height:1.15;letter-spacing:-1px;margin-top:15px}
.reg-directory-top>p{font-size:13px;color:var(--muted);max-width:170px}
.reg-country-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:30px 0}
.reg-country-nav a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;border:1px solid var(--line);font-size:14px;transition:border-color .2s,background .2s}
.reg-country-nav a:hover,.reg-country-nav a:focus-visible{border-color:#80978b;background:#ecf0e9}
.reg-country-nav a span{color:#cc532c}
.reg-filter{display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:22px;padding:24px 0 32px}
.reg-filter label{font-size:13px;font-weight:600}
.reg-filter>div{display:flex;border:1px solid #b5c3ba;background:white;min-width:0}
.reg-filter input{width:100%;min-width:0;border:0;padding:14px;background:none;font-size:13px;color:var(--ink)}
.reg-filter button{border:0;border-left:1px solid var(--line);padding:12px 18px;background:#edf1e9;font-size:12px}
.reg-filter>p{font-size:11px;color:var(--muted)}
.reg-empty{padding:32px;border:1px dashed #a6b7ac;font-size:15px}
.reg-country{border-top:1px solid #abb9b0;padding:44px 0 32px;scroll-margin-top:120px}
.reg-country:target h2{color:#b34726}
.reg-country-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:30px}
.reg-country-code{font-family:var(--mono);font-size:11px;letter-spacing:1px;color:#718378}
.reg-country h2{font-size:36px;letter-spacing:-1px;line-height:1.15;margin-top:10px}
.reg-country-heading>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:570px}
.reg-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.reg-source{background:#fff;border:1px solid #dce3db;padding:26px;display:flex;flex-direction:column;align-items:start}
.reg-source .reg-pillar{font-family:var(--mono);font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:#617867;margin:0 0 18px}
.reg-source h3{font-size:21px;line-height:1.3;margin-bottom:12px}
.reg-source>p:not(.reg-pillar){font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:22px}
.reg-source-link{font-size:13px;line-height:1.7;border-bottom:1px solid #c7d1c6;padding-bottom:5px;margin-top:auto;color:#314e40}
.reg-source-link:hover{color:#b34726;border-bottom-color:#b34726}
.reg-source-link span[aria-hidden]{margin-left:5px;color:#c55c38}
.reg-source-link+.reg-source-link{margin-top:12px}
.reg-source>p.reg-source-note{margin-top:10px;margin-bottom:0;font-size:11px}
.reg-checklist{margin-top:18px;border:1px solid #d5dfd2;background:#edf1e9;padding:0 26px}
.reg-checklist summary{display:flex;justify-content:space-between;gap:20px;align-items:center;list-style:none;padding:19px 0;font-size:14px;font-weight:600;cursor:pointer}
.reg-checklist summary::-webkit-details-marker{display:none}
.reg-checklist summary>span{font-size:24px;font-weight:400;line-height:1;transition:transform .2s}
.reg-checklist[open] summary>span{transform:rotate(45deg)}
.reg-checklist ol{margin:0;padding:8px 0 10px 24px;display:grid;grid-template-columns:1fr 1fr;column-gap:45px;row-gap:16px}
.reg-checklist li{font-size:13px;line-height:1.8;padding-left:6px}
.reg-checklist li::marker{color:#67826d;font-family:var(--mono)}
.reg-checklist .text-link{font-size:12px;margin:16px 0 25px}
.reg-country-meta{display:flex;justify-content:space-between;gap:20px;color:#67776e;font-size:10px;margin-top:18px}
.reg-country-meta a{text-decoration:underline;text-underline-offset:3px}
.reg-next{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;background:#e9eddf;padding:46px;margin-bottom:80px}
.reg-next h2{font-size:39px;line-height:1.15;letter-spacing:-1px;margin:18px 0}
.reg-next p:not(.eyebrow){max-width:610px;color:#5c6c61;font-size:14px;line-height:1.8}
.reg-next-actions{display:flex;flex-direction:column;align-items:start;gap:24px;justify-self:end}
.reg-next-actions .text-link{font-size:12px}
@media(min-width:651px){.reg-hero{padding-top:70px;padding-bottom:64px}}
@media(max-width:1000px){.reg-hero{gap:35px;grid-template-columns:1.1fr .9fr}.reg-principle{padding:25px}.reg-hero h1{font-size:57px}.reg-source{padding:20px}.reg-source-grid{gap:12px}.reg-filter{grid-template-columns:1fr 2fr}.reg-filter>p{grid-column:2}.reg-next{gap:30px}}
@media(max-width:760px){.reg-hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:40px;gap:30px}.reg-hero h1{font-size:49px;letter-spacing:-2px}.reg-principle{max-width:none}.reg-source-grid{grid-template-columns:1fr}.reg-source{padding:24px}.reg-source>p:not(.reg-pillar){margin-bottom:15px}.reg-source .reg-pillar{margin-bottom:12px}.reg-source-link{margin-top:0}.reg-country-heading{grid-template-columns:1fr;gap:20px}.reg-country-nav{grid-template-columns:1fr 1fr}.reg-checklist ol{grid-template-columns:1fr;gap:12px}.reg-next{grid-template-columns:1fr;gap:30px;padding:30px}.reg-next-actions{justify-self:start}.reg-next h2{font-size:34px}.reg-notice{margin-bottom:55px}}
@media(max-width:480px){.reg-directory-top{display:block}.reg-directory-top>p{max-width:none;margin-top:15px}.reg-directory-top h2{font-size:32px}.reg-country h2{font-size:32px}.reg-country-nav{gap:8px}.reg-country-nav a{padding:14px 12px;font-size:12px}.reg-filter{grid-template-columns:1fr;gap:10px}.reg-filter>p{grid-column:auto}.reg-notice{padding:22px 18px;gap:12px}.reg-lead{font-size:15px}.reg-country-meta{flex-direction:column;gap:10px}.reg-checklist{padding:0 19px}.reg-country{padding-top:33px}.reg-next{padding:26px 22px}}
@media(prefers-reduced-motion:reduce){.reg-country-nav a,.reg-checklist summary>span{transition:none}}
