/* Scoped additions: existing Solitaire, Gin and TalkingTime presentation remains intact. */
.portfolio-page { --portfolio-tone:#eef3f6; }
.portfolio-baccarat { --portfolio-tone:#f8f1e6; }
.portfolio-rummy { --portfolio-tone:#f8eeee; }
.portfolio-talkingalarm { --portfolio-tone:#edf1f8; }
.portfolio-hero { background:var(--portfolio-tone); padding:54px 0; }
.portfolio-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:70px; }
.portfolio-hero h1 { font-size:clamp(40px,4.8vw,66px); line-height:1.06; margin:24px 0; letter-spacing:-.045em; }
.portfolio-hero .lead { max-width:600px; font-size:21px; }
.portfolio-hero .store-button { margin-top:25px; }
.portfolio-note { color:#505a60; font-size:13px; margin:16px 0 22px; }
.portfolio-hero figure { margin:0; text-align:center; }
.portfolio-hero figure img { max-height:620px; width:auto; max-width:100%; height:auto; border-radius:14px; box-shadow:0 14px 34px #15253324; }
.portfolio-hero figcaption { color:#515c65; font-size:12px; margin:16px 0 0; }
.portfolio-rummy .portfolio-hero-grid { grid-template-columns:1fr 1.15fr; gap:45px; }
.portfolio-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; padding-top:40px; padding-bottom:40px; border-bottom:1px solid #dce2e5; }
.portfolio-benefits h2 { font-size:21px; margin-bottom:12px; }
.portfolio-benefits p,.portfolio-steps p { font-size:16px; }
.portfolio-how { padding-top:72px; padding-bottom:68px; }
.portfolio-how>h2,.portfolio-plans h2,.portfolio-questions>h2,.portfolio-close h2 { font-size:clamp(32px,3.5vw,46px); line-height:1.12; margin:16px 0 30px; }
.portfolio-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px; margin:30px 0; }
.portfolio-number { color:#376878; font-size:14px; }
.portfolio-steps h3 { font-size:25px; line-height:1.15; margin:14px 0; }
.portfolio-plans { background:#f6f7f7; padding:66px 0; }
.portfolio-plan-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.portfolio-plan-grid article { padding:32px; background:white; border:1px solid #dce2e5; border-radius:12px; }
.portfolio-plan-grid article+article { background:var(--portfolio-tone); }
.portfolio-plan-grid h3 { font-size:29px; margin:20px 0; }
.portfolio-plan-grid ul { list-style:none; padding:0; }
.portfolio-plan-grid li { padding:12px 0 12px 22px; position:relative; border-bottom:1px solid #dce2e5; }
.portfolio-plan-grid li:before { content:'✓'; position:absolute; left:0; color:#2e666c; }
.portfolio-purchase { max-width:900px; font-size:14px; margin:26px 0 0; }
.portfolio-questions { padding-top:72px; padding-bottom:48px; display:grid; grid-template-columns:1fr 1.3fr; gap:65px; }
.portfolio-questions details { padding:22px 0; border-bottom:1px solid #dce2e5; }
.portfolio-questions summary { cursor:pointer; font-size:18px; font-weight:600; }
.portfolio-questions details p { font-size:16px; margin-top:18px; }
.portfolio-close { padding-top:28px; padding-bottom:65px; text-align:center; }
.portfolio-close p { margin-top:20px; }
.portfolio-related { padding-top:38px; padding-bottom:42px; border-top:1px solid #dce2e5; }
.portfolio-related h2 { font-size:26px; margin:0 0 24px; }
.portfolio-related-links { display:flex; flex-wrap:wrap; gap:18px 34px; }
.portfolio-related-links>a { display:flex; align-items:center; gap:13px; min-height:58px; font-size:16px; text-decoration:none; color:#244e72; }
.portfolio-related-links img { border-radius:10px; flex:none; }
.portfolio-home { display:block; margin-top:24px; font-size:15px; color:#245f91; }
.portfolio-disclosure { font-size:12px; line-height:1.6; padding-bottom:28px; color:#58616a; }
.portfolio-page a:focus-visible,.portfolio-page summary:focus-visible,.portfolio-related a:focus-visible { outline:3px solid #2769c2; outline-offset:5px; }
@media(max-width:1000px) {
 .portfolio-hero-grid { gap:34px; }
 .portfolio-hero h1 { font-size:49px; }
 .portfolio-hero .lead { font-size:19px; }
 .portfolio-questions { gap:30px; }
}
@media(max-width:760px) {
 .portfolio-hero { padding:34px 0; }
 .portfolio-hero-grid,.portfolio-rummy .portfolio-hero-grid,.portfolio-questions { grid-template-columns:1fr; gap:30px; }
 .portfolio-hero h1 { font-size:43px; }
 .portfolio-hero figure img { max-height:540px; }
 .portfolio-benefits,.portfolio-steps,.portfolio-plan-grid { grid-template-columns:1fr; gap:25px; }
 .portfolio-benefits h2 { margin-bottom:7px; }
 .portfolio-how,.portfolio-questions { padding-top:46px; padding-bottom:42px; }
 .portfolio-plans { padding:43px 0; }
 .portfolio-plan-grid article { padding:24px; }
 .portfolio-related-links { flex-direction:column; }
 .portfolio-page .store-button { white-space:normal; }
}
