/* Aspirational Games R2 | integration of supplied studio key art and real R2 SVG art kit.
   The concept board guides these styles; it is not displayed as a screenshot or sprite. */
:root { --ag-cobalt:#226AC4; --ag-sky:#3294F2; --ag-mint:#BFF1E3; --ag-coral:#FC8F83; --ag-sun:#FFDB83; --ag-ink:#17344E; }
html { scroll-behavior:smooth; }
body { background:#f9faf6; }
a,button { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible { outline:3px solid #f5b639; outline-offset:4px; }
.top-progress { background:linear-gradient(90deg,#226ac4,#69ccdf,#bff1e3,#ffdb83); height:4px; }
.site-header { background:rgba(251,253,253,.95); border-bottom:1px solid rgba(59,137,194,.2); box-shadow:0 6px 30px rgba(29,87,143,.04); }
.site-header::after { content:""; position:absolute; left:0; right:0; bottom:-2px; height:2px; opacity:.65; background:linear-gradient(90deg,#226ac4 0%,#7fd2ed 33%,#bff1e3 57%,#ffdb83 74%,#fc8f83 100%); }
.header-inner { height:84px; gap:24px; }
.brand { gap:11px; text-decoration:none; }
.brand-icon,.brand .brand-mark { width:56px; height:56px; object-fit:contain; border:0; border-radius:0; box-shadow:none; flex:0 0 auto; }
.brand-copy { line-height:1.09; }
.brand-copy strong { font-size:15px; letter-spacing:.013em; font-weight:950; color:#17344E; }
.brand-copy small { font-size:11px; font-weight:950; letter-spacing:.19em; color:#226ac4; margin-top:4px; }
.brand-copy small span { color:#f5ae4b; }
.nav { gap:clamp(6px,1.1vw,21px); }
.nav a { display:inline-flex; align-items:center; gap:6px; padding:12px 3px; font-weight:850; font-size:11px; white-space:nowrap; color:#294b69; }
.nav img { width:16px; height:16px; opacity:.85; transition:transform .22s ease; }
.nav a:hover img { transform:translateY(-2px); }
.nav a::after { background:linear-gradient(90deg,#226ac4,#BFF1E3); bottom:4px; }
.header-actions { gap:12px; margin-left:0; }
.lang-switch.ag-lang { padding:3px 4px 3px 6px; border:1px solid #cbdeed; gap:2px; box-shadow:0 3px 13px rgba(23,52,78,.05); background:#fff; }
.lang-switch.ag-lang > img { width:17px; height:17px; margin:0 5px 0 4px; }
.lang-switch.ag-lang > span { display:none; }
.lang-switch.ag-lang .lang-button { padding:8px 9px; font-weight:900; color:#55738a; border-radius:20px; min-width:34px; }
.lang-switch.ag-lang .lang-button.is-active { background:#226ac4; color:#fff; box-shadow:0 2px 7px rgba(34,106,196,.15); }
.menu-toggle { width:44px; height:44px; align-items:center; justify-content:center; border:1px solid #c5dff1; border-radius:13px; box-shadow:0 4px 0 #d4e8f3; background:#fff; }
.menu-toggle img { width:23px; height:23px; display:block; }
.menu-toggle .menu-close-icon { display:none; }
.menu-toggle[aria-expanded="true"] .menu-open-icon { display:none; }
.menu-toggle[aria-expanded="true"] .menu-close-icon { display:block; }

/* Art-first homepage: copy stays OUTSIDE supplied key art so faces and logo aren't covered. */
.studio-hero { position:relative; overflow:hidden; padding:61px 0 34px; background:radial-gradient(ellipse 70% 42% at 75% 3%,#e1f7f9 0%,transparent 85%),linear-gradient(180deg,#f9faf6 0%,#eef8fc 100%); }
.studio-hero::before { content:""; position:absolute; width:34vw; height:34vw; left:-21vw; top:-11vw; background:radial-gradient(circle,#ffcfb894,transparent 70%); pointer-events:none; }
.studio-hero-intro { display:grid; grid-template-columns:1.02fr .98fr; align-items:end; gap:7%; position:relative; z-index:2; }
.studio-hero-title { min-width:0; }
.studio-hero .hero-eyebrow { display:flex; margin:0; gap:10px; font-weight:950; font-size:11px; letter-spacing:.09em; color:#276a9d; }
.studio-hero .hero-eyebrow img { width:22px; height:22px; }
.studio-hero h1 { margin:12px 0 6px; font-size:clamp(2.9rem,4.5vw,4.75rem); font-weight:950; line-height:1.28; letter-spacing:-.075em; }
.studio-hero h1 span { display:block; white-space:nowrap; }
.studio-hero .hero-first { color:#17344e; }
.studio-hero .hero-second { color:#226ac4; }
.studio-hero .hero-english { font-size:clamp(12px,1.23vw,16px); font-weight:950; color:#45789e; letter-spacing:.08em; margin:0; line-height:1.5; }
.studio-hero .hero-english em { color:#f28b80; font-style:normal; }
.studio-hero-aside { padding-bottom:7px; }
.studio-hero-aside > p { margin:0; max-width:550px; font-size:clamp(13px,1.12vw,16px); font-weight:590; line-height:2.03; color:#54748c; }
.studio-hero .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:23px; }
.studio-hero .ag-button { font-size:13px; min-height:54px; padding-left:17px; gap:15px; }
.studio-hero .ag-button__icon { width:35px; height:35px; flex-basis:35px; }
.studio-hero .ag-button__icon img { width:20px; height:20px; }
.hero-panorama-wrap { position:relative; margin-top:34px; }
.hero-panorama { margin:0; position:relative; isolation:isolate; height:clamp(360px,39.8vw,622px); border:5px solid rgba(255,255,255,.95); border-radius:32px; overflow:hidden; background:#56a8ec; box-shadow:0 12px 0 #c7e6f4,0 26px 60px rgba(42,96,163,.18); }
.hero-panorama::after { content:""; position:absolute; z-index:1; inset:55% 0 0; background:linear-gradient(180deg,transparent,rgba(17,55,95,.33)); pointer-events:none; }
.studio-hero-image { width:100%; height:100%; display:block; object-fit:cover; object-position:center center; transition:transform 1.1s ease; }
@media (hover:hover) { .hero-panorama:hover .studio-hero-image { transform:scale(1.018); } }
.hero-panorama-glint { position:absolute; z-index:1; left:-20%; bottom:-65%; width:82%; aspect-ratio:1; border:2px solid rgba(255,255,255,.35); border-radius:50%; pointer-events:none; }
.hero-stage-mark { position:absolute; z-index:2; top:18px; left:20px; display:flex; align-items:center; gap:9px; background:rgba(255,255,255,.87); border:1px solid rgba(255,255,255,.9); backdrop-filter:blur(8px); border-radius:99px; color:#1a5387; padding:8px 15px 8px 10px; box-shadow:0 8px 23px rgba(22,83,151,.1); font:950 10px "Avenir Next","Segoe UI",sans-serif; letter-spacing:.1em; }
.hero-stage-mark img { width:20px; height:20px; }
.hero-art-credit { position:absolute; z-index:2; left:21px; bottom:18px; display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border:1px solid rgba(255,255,255,.45); border-radius:8px; background:rgba(11,53,100,.45); backdrop-filter:blur(9px); color:white; font-size:9px; font-weight:850; letter-spacing:.05em; }
.hero-art-credit span { color:#ffdb83; }
.hero-lower { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:25px; color:#62839a; }
.hero-lower p { display:flex; align-items:center; gap:9px; margin:0; font-size:11px; font-weight:850; }
.hero-lower p img { width:18px; height:18px; }
.hero-lower > span { font:900 10px "Avenir Next","Segoe UI",sans-serif; letter-spacing:.12em; color:#90aaba; }
html[lang="en"] .studio-hero h1 { font-size:clamp(2.6rem,4.2vw,4.6rem); letter-spacing:-.055em; }

/* Brand kit art language across the existing R1 content. */
.ticker { background:linear-gradient(110deg,#185cbb,#348feb,#296cc2); box-shadow:0 8px 0 #b8e4ef,0 18px 28px rgba(23,96,178,.14); margin-bottom:8px; }
.ticker-track i { color:#ffdb83; }
.section-kicker { color:#317bad; }
.kicker-icon { border:1.5px solid #8bc8eb; background:#e5f5ff; color:#226ac4; }
.section-space { padding-block:108px; }
.display-heading { color:#183a57; }
.about { background:#fff; }
.about::before { content:""; width:120px; height:120px; background:url('decor/motif-four-point-star.svg') center/contain no-repeat; opacity:.22; top:70px; right:7%; }
.marker-swoosh::after { background:#bff1e3; height:17px; }
.about-quote { border:2px solid #e2f6f3; background:linear-gradient(128deg,#e1f8f5 0%,#d4effc 100%); border-radius:27px; box-shadow:0 10px 0 #e1f3f6; }
.quote-star-art { width:49px; height:49px; display:block; }
.about-quote p { margin:14px 0 13px; }
.quote-pattern { font-size:310px; }
.about-text .inline-arrow { gap:14px; }
.game-feature { border:2px solid #badbf0; background:linear-gradient(118deg,#e7f8fa,#d9edfe 70%,#d4ebfa); box-shadow:0 11px 0 #d6ebf9,0 24px 50px rgba(37,117,178,.12); border-radius:30px; }
.game-feature::before { content:""; position:absolute; z-index:1; width:230px; height:120px; right:8px; top:5px; background:url('decor/motif-cloud-star-cluster.svg') center/contain no-repeat; opacity:.22; }
.game-sublabel { display:flex; align-items:center; gap:7px; color:#327da5; margin-top:32px; }
.game-sublabel img { width:22px; height:22px; }
.game-status { border-color:#87c9d5; background:#f8fffc; color:#166f84; }
.game-info h3 { color:#173b61; text-shadow:0 2px 0 rgba(255,255,255,.8); }
.game-art img:not(.game-decor-star) { max-width:100%; }
.game-art .game-decor-star { position:absolute; width:73px; height:73px; right:4%; top:10%; transform:rotate(9deg); filter:drop-shadow(0 5px 8px rgba(16,71,130,.1)); animation:ag-star-bob 6s ease-in-out infinite; }
.game-feature:hover .game-art .game-decor-star { transform:rotate(9deg); }
.concept-note { z-index:4; font-weight:850; }
.more-worlds { border:1.5px dashed #a4cfe0; background:linear-gradient(100deg,#f5fcff,#f5fffb); }
.more-icon { background:#fff2d5; }
.more-icon img { width:33px; height:33px; }
.value-card { border:1.5px solid #d4e9f2; box-shadow:0 6px 0 rgba(193,218,232,.45); padding-top:27px; }
.value-a { background:linear-gradient(150deg,#e7f8ff,#f0fbff); }
.value-b { background:linear-gradient(150deg,#fff0ed,#fff8f0); }
.value-c { background:linear-gradient(150deg,#eaf9f4,#f5fbf7); }
.value-icon { width:104px; height:104px; margin-bottom:21px; background:transparent; border-radius:0; }
.value-icon img { display:block; width:100%; height:100%; object-fit:contain; }
.value-index { color:#367eaa; }
.value-card h3 { margin-top:10px; }
.value-english { color:#3285b2; }
.studio-note { background:radial-gradient(ellipse 60% 65% at 0% 35%,#e6f9ff,transparent 80%),#f9faf6; }
.note-layout { grid-template-columns:1.03fr .97fr; gap:6%; }
.studio-story-art { margin:0; width:100%; aspect-ratio:1.47; border:5px solid #fff; border-radius:28px; overflow:hidden; position:relative; background:#dcedf7; box-shadow:0 11px 0 #cae8f4,0 26px 42px rgba(37,91,145,.15); }
.studio-story-art img { display:block; width:100%; height:100%; object-fit:cover; object-position:47% 50%; transition:transform .55s ease; }
@media(hover:hover){ .studio-story-art:hover img { transform:scale(1.03); } }
.studio-story-art::after { content:""; position:absolute; bottom:0; left:0; right:0; height:25%; background:linear-gradient(transparent,rgba(19,52,78,.43)); pointer-events:none; }
.studio-story-art figcaption { position:absolute; z-index:1; left:16px; bottom:16px; background:rgba(255,255,255,.85); border-radius:6px; padding:6px 11px; color:#235c88; font-size:9px; line-height:1.5; letter-spacing:.07em; font-weight:900; }
.studio-story-art figcaption span { color:#e5a63a; }
.note-soon { border:1px solid #b5e1dc; background:#e6f8f2; }
.contact { background:radial-gradient(circle at 25% 75%,#328bd0a6,transparent 46%),linear-gradient(115deg,#1f64bd,#145d9a 60%,#2477c3); }
.contact::before { border-color:rgba(255,255,255,.2); }
.contact-email { display:inline-flex; align-items:center; justify-content:center; flex-wrap:wrap; }
.contact-mail-art { width:26px; height:26px; filter:brightness(0) invert(1); flex:0 0 auto; }
.footer { background:#f1f8fb; }
.footer .brand-mark { width:50px; height:50px; object-fit:contain; }
.footer-links a { transition:color .2s; }
.back-top { width:49px; height:49px; border:1.5px solid #bdddf4; background:#fff; box-shadow:0 5px 0 #c8e6f1,0 11px 28px rgba(17,75,140,.12); }
.back-top img { width:23px; height:23px; }
.legal-hero { background:linear-gradient(130deg,#e8f4fc,#ecfaf5); }
.legal-hero::after { content:""; background:url('decor/motif-four-point-star.svg') center/contain no-repeat; width:250px; height:250px; right:2%; top:-62px; opacity:.15; }
@keyframes ag-star-bob { 50% { translate:0 -10px; } }

@media(max-width:1160px){
 .header-inner{gap:12px}.brand-copy strong{font-size:13px}.brand-copy small{font-size:9px}.brand .brand-mark{height:49px;width:49px}
 .nav{gap:7px}.nav a{font-size:10px}.nav a img{width:15px;height:15px}
 .header-actions{gap:7px}
 .studio-hero-intro{gap:4%;grid-template-columns:1fr 1fr}
 .studio-hero h1{font-size:clamp(2.6rem,4.8vw,4.2rem)}
 .studio-hero .hero-actions{gap:11px}.studio-hero .ag-button{font-size:12px;min-height:50px}
 .hero-panorama{height:clamp(345px,42.5vw,540px)}
}
@media(max-width:950px){
 .header-inner{height:76px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:10px}
 .nav{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;gap:0;margin:0;padding:16px 24px 24px;background:#fbfefd;border-bottom:2px solid #cde4f1;box-shadow:0 18px 30px rgba(18,86,143,.12);flex-direction:column;align-items:stretch}
 .nav.is-open{display:flex}.nav a{width:100%;font-size:14px;padding:12px 8px;gap:12px;border-bottom:1px solid #e2eef6}.nav a img{width:23px;height:23px}.nav a::after{display:none}
 .menu-toggle{display:flex}
 .studio-hero { padding-top:42px; }
 .studio-hero-intro{grid-template-columns:1fr;gap:21px}
 .studio-hero h1{font-size:clamp(2.7rem,6.6vw,4.5rem)}
 .studio-hero-aside > p{max-width:770px;font-size:14px}
 .studio-hero .hero-actions{margin-top:19px}
 .hero-panorama-wrap{margin-top:27px}
 .hero-panorama{height:clamp(300px,47vw,480px)}
 .section-space{padding-block:85px}
 .note-layout{gap:5%}
}
@media(max-width:620px){
 .header-inner{height:68px}.brand .brand-mark{width:43px;height:43px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:8px;letter-spacing:.13em}
 .lang-switch.ag-lang{padding:3px}.lang-switch.ag-lang>img{width:16px;height:16px;margin:0 1px 0 3px}.lang-switch.ag-lang .lang-button{font-size:10px;min-width:29px;padding:7px 5px}
 .menu-toggle{width:37px;height:38px;padding:7px;box-shadow:0 3px 0 #d4e8f3}.menu-toggle img{width:19px;height:19px}
 .header-actions{gap:7px}
 .studio-hero{padding-top:29px;padding-bottom:28px}
 .studio-hero .hero-eyebrow{font-size:9px;gap:6px}.studio-hero .hero-eyebrow img{width:18px;height:18px}
 .studio-hero h1{font-size:clamp(2.25rem,9.2vw,3.4rem);line-height:1.36;margin:10px 0 4px}
 html[lang="en"] .studio-hero h1{font-size:clamp(2.2rem,9.2vw,3.1rem)}
 .studio-hero .hero-english{font-size:10px;letter-spacing:.07em}
 .studio-hero-intro{gap:18px}
 .studio-hero-aside>p{font-size:12px;line-height:1.9}
 .studio-hero .hero-actions{gap:12px;margin-top:19px}
 .studio-hero .ag-button{min-height:51px;font-size:12px;padding-left:15px;gap:12px;flex:1 1 155px;max-width:100%}
 .studio-hero .ag-button__icon{width:32px;height:32px;flex-basis:32px}.studio-hero .ag-button__icon img{width:17px;height:17px}
 .hero-panorama-wrap{margin-top:30px}
 .hero-panorama{height:clamp(260px,75vw,430px);border-width:3px;border-radius:22px;box-shadow:0 7px 0 #c7e6f4,0 17px 35px rgba(42,96,163,.14)}
 .studio-hero-image{object-position:38% center}
 .hero-stage-mark{top:10px;left:10px;padding:6px 9px 6px 7px;gap:4px;font-size:8px;letter-spacing:.03em}
 .hero-stage-mark img{width:14px;height:14px}
 .hero-art-credit{left:10px;bottom:10px;font-size:7px;padding:5px 7px;max-width:calc(100% - 20px)}
 .hero-lower{padding-top:18px;flex-wrap:wrap;gap:9px}.hero-lower p{font-size:10px}.hero-lower>span{font-size:8px}
 .section-space{padding-block:68px}
 .about-quote{box-shadow:0 6px 0 #e1f3f6}
 .game-feature{border-radius:24px;box-shadow:0 7px 0 #d6ebf9,0 16px 25px rgba(37,117,178,.09)}
 .game-feature::before{width:115px;height:85px;right:-12px;top:10px}
 .game-sublabel{margin-top:22px;gap:5px}.game-sublabel img{width:17px;height:17px}
 .game-art .game-decor-star{width:43px;height:43px;right:0;top:0}
 .value-icon{width:100px;height:100px}
 .note-layout{grid-template-columns:1fr;gap:34px}.studio-story-art{width:100%;aspect-ratio:1.68;border:3px solid #fff;border-radius:22px;box-shadow:0 7px 0 #cae8f4,0 15px 24px rgba(37,91,145,.1)}
 .contact-email{gap:11px}.contact-mail-art{width:18px;height:18px}
 .back-top{width:42px;height:42px}.back-top img{width:20px;height:20px}
}
@media(max-width:380px){
 .brand{gap:5px}.brand .brand-mark{width:35px;height:35px}.brand-copy strong{font-size:10px}.brand-copy small{font-size:7px;letter-spacing:.08em}
 .lang-switch.ag-lang>img{display:none}.lang-switch.ag-lang .lang-button{padding:7px 5px}
 .studio-hero h1{font-size:clamp(2.15rem,9.5vw,2.6rem)}
 .studio-hero .ag-button{font-size:11px;padding-left:13px;gap:6px}
 .hero-panorama{height:265px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 .studio-hero-image,.studio-story-art img{transition:none!important}
 .game-art .game-decor-star{animation:none!important}
}
/* R1's rotated ticker is intentionally wider than its container. Clip decorative bleed
   without creating a scroll container (sticky navigation remains functional). */
html,body { overflow-x:clip; }

@media(max-width:380px){ .game-info h3{font-size:clamp(2.85rem,14vw,3.4rem);} }

/* R2.2: Arise Frontier landscape postcard. Fix HTML img height=900 presentation hint
   stretching the 16:9 source into a 594x900 portrait in R2.1. Explicitly own both
   dimensions and limit transforms to the photo, not decorative artwork. */
.game-art { min-width:0; min-height:360px; height:auto; padding:24px 22px 26px 4px; align-self:center; }
.game-feature .game-art img.frontier-postcard-image { display:block; flex:none; width:100%; max-width:100%; height:auto; aspect-ratio:16 / 9; object-fit:cover; object-position:center; border:8px solid #fff; border-radius:22px; box-shadow:0 21px 45px rgba(26,80,125,.24), 0 0 0 1px rgba(14,75,132,.08); filter:none; transform:rotate(2deg); transform-origin:center center; }
.game-feature:hover .game-art img.frontier-postcard-image { transform:rotate(.8deg) translateY(-4px) scale(1.012); }
.game-art .game-decor-star { border:0; box-shadow:none; filter:drop-shadow(0 5px 8px rgba(16,71,130,.1)); border-radius:0; height:73px; }
.game-art .concept-note { right:35px; bottom:24px; box-shadow:0 5px 16px rgba(12,67,119,.1); }
/* Richer, warmer contact/footer: calm center for text, animated-looking pastel accents at edges. */
.contact { background:radial-gradient(ellipse 37% 63% at 2% 12%,rgba(191,241,227,.4),transparent 74%), radial-gradient(ellipse 28% 58% at 100% 5%,rgba(255,219,131,.34),transparent 72%), radial-gradient(ellipse 31% 55% at 95% 96%,rgba(252,143,131,.33),transparent 70%), radial-gradient(ellipse 32% 55% at 10% 100%,rgba(92,183,240,.31),transparent 75%),linear-gradient(115deg,#1b72b8 0%,#195e9f 50%,#256eaa 100%); }
.contact .contact-star-a { color:#ffdb83; text-shadow:0 0 28px rgba(255,219,131,.2); }
.contact .contact-star-b { color:#bff1e3; text-shadow:0 0 28px rgba(191,241,227,.25); }
.contact-bottom span:last-child { color:#ffb8aa; }
.contact-email .contact-email-address { white-space:normal; overflow-wrap:anywhere; word-break:normal; min-width:0; }
.contact-email .contact-email-arrow { white-space:nowrap; flex:0 0 auto; }
.contact::after { background:radial-gradient(circle,rgba(255,219,131,.21),rgba(252,143,131,.14) 44%,transparent 72%); }
.footer { background:linear-gradient(135deg,#f4fbff 0%,#f3fff9 45%,#fff7ef 100%); }
.footer::before { background:radial-gradient(circle,rgba(252,143,131,.23),transparent 70%); }
.footer::after { background:radial-gradient(circle,rgba(191,241,227,.32),transparent 71%); }
@media(max-width:860px){
 .game-art { min-height:0; padding:15px 12px 48px; margin:16px 0 0; }
 .game-feature .game-art img.frontier-postcard-image { width:100%; height:auto; aspect-ratio:16/9; transform:rotate(1deg); border-width:6px; }
 .game-feature:hover .game-art img.frontier-postcard-image { transform:rotate(.5deg); }
 .game-art .concept-note { right:19px; bottom:35px; }
}
@media(max-width:620px){
 .game-art { min-height:0; margin:14px 0 0; padding:5px 0 35px; }
 .game-feature .game-art img.frontier-postcard-image { width:100%; height:auto; border-width:5px; border-radius:15px; transform:rotate(.5deg); }
 .game-feature:hover .game-art img.frontier-postcard-image { transform:rotate(0); }
 .game-art .concept-note { right:5px; bottom:13px; padding:5px 8px; font-size:8px; white-space:normal; text-align:right; max-width:100%; }
 .game-art .game-decor-star { width:40px; height:40px; }
 .contact-email { display:flex; gap:8px; width:min(100%,100%); justify-content:center; flex-wrap:wrap; }
 .contact-email .contact-email-address { font-size:clamp(13px,4vw,22px); }
 .contact-email .contact-email-arrow { font-size:20px; }
}

/* R3.2 mobile header alignment + image-only decorative symbols. */
.inline-star{display:inline-block!important;width:13px!important;height:13px!important;object-fit:contain;flex:0 0 auto;vertical-align:middle}
.hero-art-credit .inline-star,.studio-story-art figcaption .inline-star{width:11px!important;height:11px!important}
.note-soon .inline-star{width:15px!important;height:15px!important}
.game-sublabel .inline-star{width:11px!important;height:11px!important}
.ticker-star{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 18px;font-style:normal}
.ticker-star img{display:block;width:14px;height:14px;object-fit:contain}
.quote-pattern{font-size:0!important;width:350px;height:350px;right:-43px;bottom:-140px}
.quote-pattern img{display:block;width:100%;height:100%;object-fit:contain;opacity:.34}
.contact-star{font-size:0!important;width:58px;height:58px;line-height:0}
.contact-star img{display:block;width:100%;height:100%;object-fit:contain;opacity:.78}
.contact-star-b{width:34px;height:34px}
.contact-heart{display:block;width:19px;height:19px;filter:brightness(0) saturate(100%) invert(90%) sepia(23%) saturate(858%) hue-rotate(320deg) brightness(105%) contrast(101%)}
.footer-star{display:inline-block!important;width:12px;height:12px;object-fit:contain;vertical-align:-2px;margin-left:4px}
@media(max-width:950px){.header-actions{margin-left:auto!important;justify-content:flex-end;flex:0 0 auto}.brand{min-width:0;flex:0 1 auto}}
@media(max-width:620px){.header-actions{margin-left:auto!important;justify-content:flex-end}.brand-copy{min-width:0}.brand-copy strong,.brand-copy small{white-space:nowrap}.ticker-star{width:15px;height:15px;flex-basis:15px}.ticker-star img{width:12px;height:12px}.quote-pattern{width:255px;height:255px;right:-32px;bottom:-88px}.contact-star-a{left:3%;top:20%;width:42px;height:42px}.contact-star-b{right:4%;top:12%;width:28px;height:28px}}
@media(max-width:420px){.brand-copy strong{font-size:10.8px}.brand-copy small{font-size:7px;letter-spacing:.055em}.lang-switch.ag-lang .lang-button{min-width:27px;padding:7px 4px}.header-actions{gap:6px}.menu-toggle{width:37px;height:38px}}

/* R3.3 restrained motion polish: real star assets only. */
.polish-zone{position:relative}
.polish-twinkle{position:absolute;left:var(--twinkle-x);top:var(--twinkle-y);width:var(--twinkle-size);height:auto;z-index:7;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.22) rotate(-18deg);filter:drop-shadow(0 0 7px rgba(255,219,131,.38));will-change:transform,opacity}
.polish-twinkle.is-active{animation:ag-twinkle var(--twinkle-duration,980ms) cubic-bezier(.22,.72,.28,1) forwards}
@keyframes ag-twinkle{0%{opacity:0;transform:translate(-50%,-50%) scale(.22) rotate(-18deg)}28%{opacity:.96;transform:translate(-50%,-50%) scale(1.02) rotate(-4deg)}48%{opacity:.48;transform:translate(-50%,-50%) scale(.72) rotate(5deg)}68%{opacity:1;transform:translate(-50%,-50%) scale(1.15) rotate(11deg)}100%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotate(22deg)}}
.brand{position:relative;overflow:visible}
.brand::before,.brand::after{content:"";position:absolute;z-index:8;width:18px;height:18px;background:url('decor/motif-four-point-star.svg') center/contain no-repeat;pointer-events:none;opacity:0;transform:scale(.2) rotate(-18deg)}
.brand::before{left:46px;top:-7px}
.brand::after{right:-13px;bottom:-8px;width:13px;height:13px}
.brand.brand-home-feedback .brand-medallion{animation:ag-logo-press .42s cubic-bezier(.2,.8,.25,1)}
.brand.brand-home-feedback::before{animation:ag-logo-spark .58s cubic-bezier(.2,.75,.25,1) 20ms both}
.brand.brand-home-feedback::after{animation:ag-logo-spark .54s cubic-bezier(.2,.75,.25,1) 120ms both}
@keyframes ag-logo-press{0%{transform:scale(1)}30%{transform:scale(.955)}70%{transform:scale(1.035)}100%{transform:scale(1)}}
@keyframes ag-logo-spark{0%{opacity:0;transform:scale(.2) rotate(-18deg)}35%{opacity:1;transform:scale(1.12) rotate(0)}70%{opacity:.82;transform:scale(.86) rotate(12deg)}100%{opacity:0;transform:scale(.28) rotate(24deg)}}
@media(max-width:620px){.brand::before{left:36px;top:-5px;width:15px;height:15px}.brand::after{right:-8px;bottom:-5px;width:11px;height:11px}.polish-twinkle{filter:drop-shadow(0 0 5px rgba(255,219,131,.32))}}
@media(prefers-reduced-motion:reduce){.polish-twinkle{display:none!important}.brand.brand-home-feedback .brand-medallion,.brand.brand-home-feedback::before,.brand.brand-home-feedback::after{animation:none!important}}

