/* Inner hero layouts only. Homepage and all motion rules remain untouched. */
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]),
.g1-detail-game-detail .hero,
.g1-site .g1-browser>header{
 box-sizing:border-box;position:relative;isolation:isolate;background:#f7f3e9;background-image:none;
 padding:clamp(28px,4.5vw,64px);margin-block:28px 48px;border:1px solid #e1e3d8;border-bottom:2px solid #b7bda9;
 box-shadow:none;min-height:0;overflow:visible;
}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero)::after,
.g1-site .g1-browser>header::after{content:none}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) h1,
.g1-detail-game-detail .hero h1,
.g1-site .g1-browser>header h1{
 font-size:clamp(34px,4.2vw,64px)!important;line-height:1.09!important;letter-spacing:-.045em!important;
 max-width:22ch;margin:16px 0 24px;text-wrap:balance;overflow-wrap:anywhere;
}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) :is(p,nav),
.g1-detail-game-detail .hero-copy p,
.g1-site .g1-browser>header p{max-width:64ch;line-height:1.65}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) p,
.g1-site .g1-browser>header p{margin-block:0 16px}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) :is(.eyebrow,.article-kicker,.free-kicker),
.g1-site .g1-browser>header .g1-label{margin:0 0 16px;font-size:12px;line-height:1.5}
.g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,[data-g1-intro-hero]) :is(.starter-actions,.refresh-topics,.ltk-actions,.cbb-actions,.lst-actions,.tsr-actions,.ffsite-actions){display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:28px}
.g1-details .business-article>header{max-width:none;margin-top:28px}
.g1-details .business-article>header time{display:block;margin-top:24px}
.g1-details .business-article>.article-meme{margin-top:0;margin-bottom:24px}
.g1-site .g1-browser{padding-top:32px}
.g1-site .g1-browser>header{margin-top:0}
.g1-details .refresh-hero{max-width:1200px;display:block}
.g1-details .refresh-hero-copy{max-width:none}
.g1-details .about-hero{display:block}
.g1-details .about-hero::after{content:"";display:block;clear:both}
.g1-details .about-portrait{float:right;width:150px;max-width:28%;height:auto;aspect-ratio:3/4;margin:0 0 24px 32px;object-fit:contain}
.g1-details .project-landing-hero,.g1-detail-game-detail .hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.g1-details :is(.project-landing-hero,.hero) :is(img,video){max-width:100%;height:auto;object-fit:contain}
.g1-details :is(.project-landing-hero,.hero) :is(figure,.project-landing-hero-art){margin:0;min-width:0}
.g1-detail-game-detail main:has(>[data-g1-intro-hero]){box-sizing:border-box;max-width:1200px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}
.g1-details [data-g1-intro-hero]~:is(.ltk-preview,.cbb-preview,.lst-preview,.tsr-preview,.ffsite-preview){display:block;max-width:100%;height:auto;object-fit:contain;margin:0 auto 40px}
.g1-details [data-g1-intro-hero]>.button{margin-top:12px}
.g1-details .free-hero{padding:clamp(28px,4vw,48px);margin-bottom:36px}
.g1-details .free-hero h1{font-size:clamp(32px,4vw,56px)!important}
@media(max-width:700px){
 .g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]),
 .g1-detail-game-detail .hero,.g1-site .g1-browser>header{padding:28px 24px;margin-block:24px 32px}
 .g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) h1,
 .g1-detail-game-detail .hero h1,.g1-site .g1-browser>header h1{font-size:clamp(30px,8.5vw,40px)!important;line-height:1.12!important;max-width:23ch;margin:14px 0 22px}
 .g1-details :is(.refresh-hero,.about-hero,.starter-hero,.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]) p,.g1-site .g1-browser>header p{font-size:16px;line-height:1.65}
 .g1-details .about-portrait{float:none;width:112px;max-width:100%;margin:0 0 24px}
 .g1-details .project-landing-hero,.g1-detail-game-detail .hero{grid-template-columns:1fr;gap:28px}
 .g1-site .g1-browser{padding-top:24px}
 .g1-site .g1-browser>header{margin-top:0}
 .g1-detail-game-detail main:has(>[data-g1-intro-hero]){padding-inline:20px}
}

/* Original game headers define display:flex globally; intro copy stays stacked. */
.g1-details [data-g1-intro-hero]{display:block;min-width:0}
.g1-details [data-g1-intro-hero]>*{max-width:100%;box-sizing:border-box}

/* One continuous responsive scene, with separate mobile artwork. */
.g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family]{display:block;position:relative;isolation:isolate;overflow:hidden;min-height:clamp(420px,42vw,620px);padding:clamp(36px,5vw,72px);background:#f7f1e6;}
[data-g1-hero-copy]{position:relative;z-index:2;min-width:0;width:56%;max-width:66ch}
.g1-inner-art{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;pointer-events:none}
.g1-inner-art img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:right bottom;border-radius:0}
.g1-details .about-hero:has(.g1-inner-art)::after{content:none}
.g1-details .about-hero .about-portrait{width:88px;max-width:28%;margin:0 0 20px 24px}
@media(max-width:1000px){
 .g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family]{min-height:calc((100vw - 48px)*1.33334);padding:32px 24px clamp(200px,60vw,320px)}
 [data-g1-hero-copy]{width:100%;max-width:none}
 .g1-details .about-hero .about-portrait{float:none;width:88px;max-width:100%;margin:0 0 24px}
}

/* Longer offer copy needs a wider desktop canvas and a compact headline. */
.g1-site.g1-detail-offer .starter-offer{max-width:1380px;width:auto}
.g1-site.g1-detail-offer [data-g1-inner-family] h1{font-size:clamp(34px,3.7vw,56px)!important}
.g1-site.g1-details [data-g1-inner-family] .button{background:#104b36!important;color:#fff!important;border:1px solid #104b36!important}
@media(min-width:1001px){.g1-site.g1-detail-offer [data-g1-hero-copy]{width:54%}}

.g1-site.g1-details [data-g1-inner-family]{max-width:none;width:100%}
.g1-site.g1-detail-about .about-main,.g1-site.g1-detail-offer .offer-detail{max-width:1380px}
@media(min-width:1001px) and (max-width:1200px){
 .g1-site.g1-details [data-g1-inner-family] h1{font-size:48px!important}
 .g1-site.g1-details [data-g1-inner-family] p{font-size:17px;line-height:1.55}
}

/* Keep shared navigation controls readable over legacy inner-page button rules. */
.g1-site .g1-header .g1-menu{color:#104b36!important;background:transparent!important}

/* Services is the shared outer-edge and spacing reference, including Home. */
.g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family],.g1-site .g1-hero[data-g1-art-paired="true"]{
 box-sizing:border-box;width:min(1200px,100vw);max-width:none;position:relative;left:50%;transform:translateX(-50%);margin:28px 0 48px;padding:clamp(36px,5vw,72px);min-height:clamp(420px,42vw,620px);border:1px solid #e1e3d8;border-bottom:2px solid #b7bda9;
}
.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-slides,.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-carousel-controls{width:56%}
.g1-site .g1-hero[data-g1-art-paired="true"] .g1-slide h1,.g1-site .g1-hero[data-g1-art-paired="true"] .g1-slide h2{font-size:clamp(34px,4.2vw,64px)!important;line-height:1.09;letter-spacing:-.045em;margin:16px 0 24px}
@media(max-width:1000px){
 .g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family],.g1-site .g1-hero[data-g1-art-paired="true"]{padding:32px 24px clamp(200px,60vw,320px);min-height:calc(100vw*1.33334);margin-block:24px 32px}
 .g1-site .g1-hero[data-g1-art-paired="true"]>.g1-slides,.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-carousel-controls{width:100%}
 .g1-site .g1-hero[data-g1-art-paired="true"] .g1-slide h1,.g1-site .g1-hero[data-g1-art-paired="true"] .g1-slide h2{font-size:clamp(30px,8.5vw,40px)!important;line-height:1.12}
}

/* Viewport-width hero surfaces; readable copy remains inside a 1200px field. */
.g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family],.g1-site .g1-hero[data-g1-art-paired="true"],
.g1-site.g1-details :is(.business-article>header,.free-hero,.project-landing-hero,[data-g1-intro-hero]),.g1-site.g1-detail-game-detail .hero{
 box-sizing:border-box;width:100vw;max-width:none;position:relative;left:50%;transform:translateX(-50%);margin-inline:0;
 padding-inline:max(24px,calc((100vw - 1200px)/2));
}
.g1-site.g1-details [data-g1-inner-family],.g1-site .g1-browser>header[data-g1-inner-family],.g1-site .g1-hero[data-g1-art-paired="true"]{background:var(--hero-paper,#f7f1e6)}
.g1-site [data-g1-hero-copy]{width:56%;max-width:672px}
.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-slides,.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-carousel-controls{width:56%;max-width:672px}
.g1-site .g1-inner-art,.g1-site .g1-hero[data-g1-art-paired="true"] .g1-growth-art{width:min(100%,1774px);left:50%;right:auto;transform:translateX(-50%);mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}
@media(max-width:1000px){
 .g1-site [data-g1-hero-copy]{width:100%;max-width:none}
 .g1-site .g1-hero[data-g1-art-paired="true"]>.g1-slides,.g1-site .g1-hero[data-g1-art-paired="true"]>.g1-carousel-controls{width:100%;max-width:none}
 .g1-site .g1-inner-art,.g1-site .g1-hero[data-g1-art-paired="true"] .g1-growth-art{width:100%;mask-image:none}
}
.g1-site [data-g1-inner-family="articles"]{--hero-paper:#f6ebdc}
.g1-site [data-g1-inner-family="memes"]{--hero-paper:#fbf1e2}
.g1-site [data-g1-inner-family="starter"]{--hero-paper:#fbf0e4}
.g1-site [data-g1-inner-family="games"]{--hero-paper:#fcf7ed}
.g1-site [data-g1-inner-family="inquiry"]{--hero-paper:#f9efe3}
.g1-site [data-g1-inner-family="about"]{--hero-paper:#faf3e8}
.g1-site [data-g1-inner-family="free-stuff"]{--hero-paper:#f7efe2}
.g1-site [data-g1-inner-family="stories"]{--hero-paper:#f6ecde}
.g1-site [data-g1-inner-family="services"]{--hero-paper:#f7efe3}
.g1-site .g1-hero[data-g1-art-paired="true"]{--hero-paper:#fbefde}

/* Alternating category/service sections; only one selected result page is loaded. */
.g1-site .g1-section-categories{display:block}
.g1-site .g1-section-categories .g1-reveal,.g1-site.g1-details .refresh-section.g1-reveal{padding:0;max-width:1200px;margin:64px auto;overflow:visible}
.g1-site .g1-section-categories .g1-category-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px}
.g1-site .g1-category-preview>img{display:block;width:100%;height:auto;max-height:320px;object-fit:contain}
.g1-site .g1-section-categories .g1-category-results{padding:12px 0;min-width:0}
.g1-site .g1-section-categories .g1-curtain button{background:none;color:inherit;border:0;border-bottom:1px solid currentColor;font:inherit;line-height:1.5;text-align:left;min-height:44px;padding:8px 0;margin-top:24px;max-width:100%}
.g1-site .g1-section-categories .g1-panel-mineral .g1-curtain,.g1-site.g1-details .g1-panel-mineral .g1-curtain{background-color:#9dbfa7}
.g1-site .g1-section-categories .g1-panel-forest .g1-curtain,.g1-site.g1-details .g1-panel-forest .g1-curtain{background-color:#38705b;color:#fff}
.g1-site.g1-details .g1-curtain h2{font-size:clamp(28px,3.3vw,44px);line-height:1.08;color:inherit;letter-spacing:-.045em}
.g1-site.g1-details .g1-curtain p{color:inherit;font-size:15px;line-height:1.5}
.g1-site.g1-details .g1-reveal>.g1-stationary{overflow:hidden}
.g1-site .g1-section-categories .g1-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media(max-width:700px){
 .g1-site .g1-section-categories .g1-reveal,.g1-site.g1-details .refresh-section.g1-reveal{margin-block:36px}
 .g1-site .g1-section-categories .g1-category-preview{grid-template-columns:minmax(0,1fr);gap:12px}
 .g1-site .g1-section-categories .g1-results-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity;gap:18px;padding-bottom:12px}
 .g1-site .g1-section-categories .g1-results-grid>.g1-card{flex:0 0 min(82vw,340px);max-width:100%;scroll-snap-align:start}
 .g1-site .g1-section-categories .g1-results-heading{flex-wrap:wrap}
}

.g1-site.g1-details .g1-stationary .refresh-offer{display:block;min-width:0}
.g1-site.g1-details .g1-stationary .refresh-offer .refresh-resource-art{display:block;width:100%;padding:20px 20px 0;box-sizing:border-box}
.g1-site.g1-details .g1-stationary .refresh-offer .refresh-resource-copy{padding:24px}
.g1-site.g1-details .g1-stationary .refresh-offers{align-items:start}

.g1-site .g1-section-categories .g1-curtain{align-self:start}
.g1-site .g1-result-rail-controls{display:none}
.g1-site.g1-detail-services .g1-stationary .button{background:#104b36;color:#fff;border-color:#104b36}
@media(max-width:700px){.g1-site .g1-result-rail-controls{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-block:12px}.g1-site .g1-result-rail-controls button{min-width:44px;min-height:44px;background:transparent;border:1px solid var(--g1-line);color:var(--g1-forest);font-size:22px}.g1-site .g1-result-rail-controls span{font-size:13px}}

/* Exact approved logo; native proportions in header/footer and article fallback. */
.g1-site .g1-wordmark:has(.g1-brand-logo){display:flex;align-items:center;gap:18px;white-space:normal;letter-spacing:0}
.g1-site .g1-brand-logo{display:block;width:112px;height:112px;object-fit:contain;flex:none}
.g1-site .g1-header .g1-wordmark span{max-width:145px;line-height:1.7;font-size:10px}
.g1-site .g1-footer .g1-brand-logo{width:128px;height:128px}
.g1-site .article-brand-fallback img,.g1-site img[data-article-fallback-applied]{height:auto;object-fit:contain;background:#fbfbf6}
@media(max-width:700px){.g1-site .g1-header .g1-brand-logo{width:88px;height:88px}.g1-site .g1-header .g1-wordmark span{display:none}.g1-site .g1-header{padding-block:14px}}
