*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f3ec;color:#263d43;font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}a:hover{text-decoration:underline}button,select{font:inherit}.skip{position:absolute;top:-100px;left:15px;padding:8px;background:white}.skip:focus{top:8px}.header{border-bottom:1px solid #d8d1c5;background:#fffdf8}.wrap{max-width:1320px;margin:auto;padding:0 5%}.bar{display:flex;align-items:center;gap:22px;min-height:88px}.brand{font-weight:800;letter-spacing:-.035em;text-decoration:none;font-size:1.14rem;white-space:nowrap}.brandmark{display:inline-grid;place-items:center;background:#263d43;color:#f4d991;border-radius:10px;width:40px;height:40px;margin-right:10px;font-size:1.1rem}.nav{display:flex;gap:22px;margin-left:auto;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:650;font-size:.9rem}.lang{display:flex;align-items:center;gap:6px}.lang select{max-width:180px;padding:9px;background:#fff;border:1px solid #c9c0b3;border-radius:8px;color:#263d43}.hero{padding:80px 0 67px;display:grid;grid-template-columns:1.1fr .8fr;gap:7%;align-items:center}.eyebrow{color:#9a533d;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem;font-weight:800}.hero h1,h1,h2{font-family:Georgia,serif;font-weight:500;line-height:1.1;letter-spacing:-.045em}.hero h1{font-size:clamp(2.8rem,6vw,5.7rem);margin:18px 0}.hero p{max-width:640px;color:#52656a;font-size:1.13rem}.heroart{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;border-left:1px solid #d8d1c5;padding-left:28px}.tile{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #d8d1c5;background:#fffdf8;min-height:92px}.tile img{width:44px;height:44px;border-radius:10px}.tile strong{font-size:.86rem;line-height:1.25}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #263d43;border-radius:100px;background:#263d43;color:white;text-decoration:none;padding:11px 20px;font-weight:750;margin-top:16px}.button:hover{color:white}.section{padding:65px 0}.muted{background:#eee8dd}.section h2{font-size:clamp(2rem,4vw,3.25rem);margin:12px 0}.section p{max-width:740px;color:#52656a}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.filters button{border:1px solid #d8d1c5;background:#fffdf8;color:#263d43;border-radius:100px;padding:8px 14px;cursor:pointer}.filters button[aria-pressed="true"]{background:#263d43;color:#fff}.card[hidden]{display:none}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:28px}.card{border:1px solid #d8d1c5;background:#fffdf8;padding:22px;display:flex;flex-direction:column;gap:13px;min-height:210px}.cardtop{display:flex;align-items:center;gap:12px}.cardtop img{width:48px;height:48px;object-fit:cover;border-radius:10px}.card h3{font-size:1.04rem;line-height:1.25;margin:0;overflow-wrap:anywhere}.category{font-size:.82rem;color:#627477}.status{border:1px solid #d8d1c5;border-radius:30px;padding:4px 9px;font-size:.75rem;align-self:start}.badge{border-color:#89aa9f;background:#eef6f1;color:#275a50}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:auto}.storebadge{width:120px;height:40px;display:block;object-fit:contain}.detail{font-weight:750;color:#9a533d}.footer{background:#263d43;color:#fff;padding:40px 0}.footer .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.footer a{font-weight:650}.footer p{margin:0 auto 0 0;color:#d8e0de}.legal{max-width:850px;padding:60px 5% 90px;margin:auto}.legal h1{font-size:clamp(2.5rem,5vw,4.2rem)}.legal article{background:#fffdf8;border:1px solid #d8d1c5;padding:clamp(22px,4vw,48px)}.legal section{border-top:1px solid #e4ddd3;padding:15px 0}.legal section:first-child{border-top:0}.legal p{line-height:1.75}.legal a{color:#8b4934}.gallery{display:flex;gap:12px;overflow-x:auto;padding:14px 0}.gallery img{height:360px;width:auto;border-radius:10px;border:1px solid #d8d1c5}@media(max-width:900px){.hero{grid-template-columns:1fr}.heroart{border:0;padding:0}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.bar{flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.nav{margin-left:0}}@media(max-width:620px){.bar{gap:8px}.brand{width:100%}.nav{gap:12px}.lang{margin-left:auto}.hero{padding:45px 0}.heroart{grid-template-columns:repeat(2,1fr)}.tile{padding:8px;min-height:75px}.tile img{width:32px;height:32px}.tile strong{font-size:.72rem}.cards{grid-template-columns:1fr}.footer .wrap{display:block}.footer a{display:inline-block;margin:8px 10px 0 0}.gallery img{height:300px}}[dir=rtl] .nav{margin-left:0;margin-right:auto}[dir=rtl] .heroart{border-left:0;border-right:1px solid #d8d1c5;padding-left:0;padding-right:28px}[dir=rtl] .footer p{margin:0 0 0 auto}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.course-detail{margin:45px 0 30px;border-top:1px solid #d8d1c5;padding-top:32px}.course-detail h2{font-size:clamp(1.8rem,3vw,2.5rem)}.course-detail p{color:#52656a}.course-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}.course-topics span{padding:15px;background:#fffdf8;border:1px solid #d8d1c5;border-radius:10px;font-weight:650}.course-detail .course-platform{font-size:.9rem}.course-detail details{border-top:1px solid #d8d1c5;padding:18px 0}.course-detail summary{cursor:pointer;font-weight:700}@media(max-width:620px){.course-topics{grid-template-columns:1fr}}

/* Warm academic continuity for localized pages */
.wrap{max-width:1280px;padding-inline:clamp(22px,5vw,78px)}
.header{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.97);backdrop-filter:blur(12px)}
.hero{min-height:510px;padding-block:clamp(58px,7vw,100px);background:linear-gradient(145deg,#f7f3ec,#f1ece3)}
.hero>div:first-child{max-width:720px}.hero h1{max-width:13ch}.heroart{gap:14px}.tile{border-radius:10px;box-shadow:0 8px 24px rgba(38,61,67,.045)}
.section{padding-block:clamp(70px,7vw,110px)}.section.muted{background:#eee8dd}
.card{border-radius:10px;box-shadow:0 8px 25px rgba(38,61,67,.045)}
.legal.product-localized{max-width:1160px;padding:clamp(45px,6vw,76px) clamp(22px,5vw,78px) 90px}
.product-localized>h1{max-width:900px}.product-localized>.course-detail{max-width:100%}
.product-localized>.gallery{gap:20px;padding-top:22px}.product-localized>.gallery img{height:min(68vw,510px)}
[dir=rtl] .heroart{border-right-color:#d8d1c5}
@media(max-width:900px){.hero{min-height:0;gap:40px}.heroart{max-width:720px;padding:0;border:0}[dir=rtl] .heroart{padding:0;border:0}}
@media(max-width:620px){.hero{padding-block:50px}.hero h1{font-size:clamp(2.6rem,11vw,4rem)}.heroart{grid-template-columns:repeat(2,minmax(0,1fr))}.product-localized>.gallery img{height:340px}}

/* Direct app navigation */
.heroart{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0;padding:0}.heroart .tile{width:100%;min-height:84px;display:flex;align-items:center;gap:9px;padding:10px;text-align:start;color:#263d43;text-decoration:none;font:inherit;cursor:pointer}.heroart .tile:hover,.heroart .tile:focus-visible{border-color:#a65538;box-shadow:0 10px 25px #263d4322}.heroart .tile img,.tile-symbol{width:38px;height:38px;flex:none;border-radius:9px}.tile-symbol{display:grid;place-items:center;background:#e5e7df;color:#32505a;font-weight:800}.heroart .tile span:not(.tile-symbol){min-width:0}.heroart .tile strong{display:block;font-size:.8rem;line-height:1.3;overflow-wrap:anywhere}.heroart .tile small{display:block;color:#627477;font-size:.7rem}.card{position:relative;padding-right:32px;cursor:pointer}.card:hover,.card:focus-within{border-color:#a65538;box-shadow:0 10px 25px #263d4322}.card-hit{position:absolute;inset:0;z-index:1;border:0;background:none;cursor:pointer}.card-hit::after{content:'↗';position:absolute;top:16px;right:16px;color:#a65538;font-weight:800}.card .actions{position:relative;z-index:2}.card .actions a{position:relative;z-index:2}.card h3{padding-right:20px}.official-name{margin:-6px 0 20px;color:#627477;font-size:.88rem}.planned-detail{width:min(420px,calc(100vw - 30px));border:1px solid #d8d1c5;border-radius:16px;padding:30px;background:#fffdf8;color:#263d43;box-shadow:0 20px 65px #172c3a44}.planned-detail::backdrop{background:#102c3c99}.planned-detail h2{font-size:2rem;overflow-wrap:anywhere}.planned-detail p{color:#52656a}.dialog-close{float:right;border:0;background:#eee8dd;border-radius:8px;padding:4px 12px;font-size:1.3rem;cursor:pointer}@media(max-width:900px){.heroart{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.heroart{grid-template-columns:repeat(2,minmax(0,1fr))}.heroart .tile{min-height:78px;padding:9px}.heroart .tile strong{font-size:.78rem}.heroart .tile img,.tile-symbol{width:31px;height:31px}}

.card-desc{margin:0;color:#52656a;font-size:.9rem;line-height:1.5}.card:has(.card-desc){min-height:230px}

/* Give translated app names enough width in the hero lineup. */
.heroart{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.heroart .tile{min-width:0;min-height:92px;gap:10px;padding:10px 12px}.heroart .tile span:not(.tile-symbol){min-width:0}
.heroart .tile strong{font-size:.87rem;line-height:1.3;overflow-wrap:normal;word-break:normal;hyphens:auto}
.heroart .tile small{font-size:.76rem;line-height:1.25}
@media(max-width:620px){.heroart{grid-template-columns:repeat(2,minmax(0,1fr))}.heroart .tile{min-height:88px;padding:9px}.heroart .tile strong{font-size:.82rem}}

/* Preserve portrait screenshot proportions in the two newer app galleries. */
.product-localized>.gallery.tall-screens img{display:block;width:auto;height:auto;max-width:min(90vw,360px);max-height:min(68vw,510px);object-fit:contain}
@media(max-width:620px){.product-localized>.gallery.tall-screens img{max-width:calc(100vw - 60px);max-height:340px}}
