/* Card media and final layout overrides. */
.itemMedia{display:block;margin:0 0 20px;overflow:hidden;border-radius:14px;aspect-ratio:3/2;background:#edf0ed}
.itemMedia img{width:100%;height:100%;display:block;object-fit:cover}
.sourceCaption,.mediaDisclosure{display:block;font-size:12px;line-height:1.75;opacity:.72;margin-top:18px}
.hero{background:#17191d url("/assets/images/official/main-scene.webp") 50% 100%/cover no-repeat !important}
.premiumImage{background:linear-gradient(#07172528,#07172535),url("/assets/images/official/brand-design.jpg") 50% 50%/cover no-repeat !important}
.registrationHero{background:linear-gradient(#071725e0,#071725eb),url("/assets/images/official/main-scene.webp") 50% 100%/cover no-repeat !important}
.premiumGuideSection{max-width:1200px;margin:0 auto;padding:72px 24px 82px}
.premiumGuideIntro{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);gap:64px;align-items:end;margin-bottom:42px}
.premiumGuideIntro h2{font-size:clamp(34px,4.3vw,56px);line-height:1.15;letter-spacing:-.055em;margin:10px 0 0}
.premiumGuideIntro>p:last-child{color:#596674;line-height:1.85;margin:0}
.premiumCardsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.premiumCardsGrid article{background:#fff;border:1px solid #e2ddd4;border-radius:24px;padding:26px;min-width:0}
.premiumCardsGrid small,.locationBenefitGrid small{color:#9d6b21;letter-spacing:.1em;font-weight:850}
.premiumCardsGrid h3{font-size:25px;letter-spacing:-.035em;margin:10px 0}
.premiumCardsGrid p{color:#596674;line-height:1.75;margin-bottom:0}
.mediaDisclosure{max-width:900px;margin:24px 0 0;color:#68737c}
.locationMapPanel .locationFeatureMedia{width:100%;margin:20px 0;aspect-ratio:16/10}
.locationAddresses{display:grid;grid-template-columns:72px 1fr;gap:7px 12px;width:100%;margin:0 0 24px}
.locationAddresses small{color:#c9a665;letter-spacing:.05em}
.locationAddresses strong{font-size:14px;line-height:1.55}
.locationDisclosure{max-width:1200px;margin:-44px auto 72px;padding:0 24px;color:#68737c}
.locationBenefitGrid article .itemMedia{aspect-ratio:16/10;margin-top:16px}
@media(width<=900px){.premiumGuideIntro{grid-template-columns:1fr;gap:18px}.premiumCardsGrid{grid-template-columns:1fr}.premiumGuideSection{padding-top:54px}.locationDisclosure{margin-top:-18px}}
@media(width<=600px){.premiumGuideSection{padding:44px 16px 64px}.premiumCardsGrid article{padding:20px}.premiumCardsGrid h3{font-size:22px}.locationDisclosure{padding:0 16px;margin-bottom:58px}}

/* Official originals stay intact; framing and captions adapt to the existing slots. */
.officialMedia{width:100%;margin:0 0 32px;background:#fff;overflow:hidden;border-radius:14px}
.officialMedia img{display:block;width:100%;height:auto}
.officialMedia figcaption{padding:12px 16px;color:#68737c;font-size:12px;line-height:1.7}
.officialScene img{aspect-ratio:16/9;object-fit:cover;object-position:50% 100%}
.locationMapPanel .locationFeatureMedia{aspect-ratio:585/439;background:#fff}
.locationMapPanel .locationFeatureMedia img{object-fit:contain}
.projectDetailTable a{text-decoration:underline;text-underline-offset:4px}
.hero .visualNotice{display:block;top:94px;right:16px;bottom:auto;max-width:180px;margin:0;padding:5px 8px;border-radius:4px;background:#07172580;color:#fff;font-size:10px;line-height:1.5;pointer-events:none}
@media(width<=600px){.hero .visualNotice{top:110px;right:12px;max-width:160px;font-size:9px}.officialMedia figcaption{font-size:11px}.comingSoonActions .buttonGhost{font-size:13px}.mobileBar a:first-child{font-size:12px}}

/* Equal card insets preserve a consistent media width and 3:2 frame. */
@media(width>760px){.highlightGrid article{min-width:0;padding-left:36px}.highlightGrid article:last-child{border-right:1px solid transparent}}

/* Separate the education benefits list from its official poster. */
.projectDetailTable + .officialMedia{margin-top:36px}
@media(width<=600px){.projectDetailTable + .officialMedia{margin-top:24px}}
