/* A shared baseline makes the scope of each cooperation level directly comparable. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.comparison-heading{margin:0 0 30px}.comparison-heading h3{font-size:30px;font-weight:400;letter-spacing:-.02em}
.plan-selector{display:none}.comparison-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:15px;color:#262c24}
.comparison-table .feature-column{width:34%}.comparison-table th,.comparison-table td{padding:21px 26px;vertical-align:middle;text-align:center;border-bottom:1px solid #dce0d6;font-weight:400;line-height:1.65}
.comparison-table th:first-child{text-align:left;padding-left:0}.comparison-table td:last-child,.comparison-table th:last-child{background:#e9ede3}
.comparison-table thead th{padding-block:27px 32px;border-top:1px solid #bcc4b5;border-bottom:1px solid #bcc4b5;vertical-align:top}
.comparison-table thead th:first-child{font-size:14px;color:#707768;padding-top:38px}
.comparison-table h4{font-size:27px;font-weight:400;line-height:1.4;margin:0 0 11px}.comparison-table thead p{font-size:13px;color:#6b7462;line-height:1.8;margin:0}
.comparison-table tbody th>span{display:block;font-size:16px}.comparison-table small{display:block;font-size:13px;color:#727a6a;line-height:1.85;margin-top:5px}
.comparison-table .comparison-group th,.comparison-table .comparison-group td{padding-top:29px;padding-bottom:12px;border-bottom:0;font-size:12px;letter-spacing:.06em;color:#767f6c}
.plan-check{font-size:22px;color:#354a2b;line-height:1}.plan-absent{color:#abb1a4;font-size:18px}
.comparison-table tfoot th,.comparison-table tfoot td{border-bottom:0;padding-top:30px;padding-bottom:34px}.comparison-table .button{width:100%;padding-inline:12px;min-height:44px;font-size:14px;white-space:normal;line-height:1.5}
.comparison-table tfoot td{vertical-align:bottom}.comparison-limit{font-size:12px;line-height:1.8;color:#707b65;margin:0 0 15px}
.comparison-table thead th{position:sticky;top:80px;z-index:4;background:#f3f4ef}.comparison-table thead th:last-child{background:#e9ede3}
/* The two trial paths have the same rhythm; lesson titles lead, durations remain secondary. */
.trial-redesigned{margin-top:65px;padding-top:55px;border-top:1px solid #ccd3c3}
.trial-redesigned .f-trial-intro{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:38px}
.trial-redesigned .f-trial-intro h3{font-size:32px;line-height:1.5;font-weight:400}.trial-redesigned .f-trial-lead{margin:0;font-size:15px;line-height:1.9}
.trial-redesigned .f-trial-options{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.trial-redesigned .trial-option{display:flex;flex-direction:column;padding:32px 35px 26px;background:#fff;border:0;border-top:2px solid #515e45}
.trial-redesigned .trial-option:last-child{background:#e9ede3}.trial-redesigned .f-trial-card-head{display:block;margin:0 0 28px}
.trial-step{display:block;font-size:12px;color:#7b8273;letter-spacing:.06em;margin-bottom:12px}
.trial-redesigned .f-trial-card-head h4{font-size:24px;font-weight:400;line-height:1.5;margin:0}
.trial-content{flex:1}.trial-lesson h5{font-size:23px;font-weight:400;line-height:1.5;margin:0 0 9px}
.trial-lesson p{margin:0;display:flex;align-items:center;gap:16px;font-size:14px;color:#6f7866;line-height:1.7}.trial-lesson p span{border-left:1px solid #c8d0bf;padding-left:16px}
.trial-choice{display:block;margin:16px 0;font-size:12px;color:#858d7c}
.trial-redesigned .f-trial-process{font-size:15px;line-height:2;margin:30px 0 0;color:#65715b}
.trial-redesigned .f-trial-note{font-size:14px;line-height:1.85;color:#6b7561;margin:27px 0 0;padding-top:19px;border-top:1px solid #dce2d3}
.trial-redesigned .f-trial-footer{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:25px}
/* Photo-led account dialog. Only authentication receives this layout. */
.account-dialog.account-auth{width:min(1080px,calc(100vw - 64px));max-width:none;max-height:calc(100dvh - 48px);border-radius:0;background:#fff;color:#202321;padding:0;overflow:auto;box-shadow:0 25px 100px #0003}
.account-dialog.account-auth::backdrop{background:#15191580;backdrop-filter:blur(5px)}
.auth-shell{display:grid;grid-template-columns:1.05fr 1fr;min-height:620px;position:relative}
.auth-visual{position:relative;min-height:100%;overflow:hidden;background:#4d5048}.auth-visual>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:43% center}
.auth-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 55%)}
.auth-visual-copy{position:absolute;z-index:1;bottom:44px;left:38px;right:25px;color:#fff}.auth-visual-copy p{font-size:13px;letter-spacing:.1em;margin:0 0 15px}.auth-visual-copy h3{font-size:31px;line-height:1.55;font-weight:400;margin:0}
.auth-panel{position:relative;padding:48px 50px 32px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.account-auth .account-close{position:absolute;top:14px;right:16px;width:36px;height:36px;min-height:36px;border:0;border-radius:0;background:transparent;color:#444b41;font-size:28px;font-weight:300;line-height:1;padding:0}
.auth-heading{margin:0 0 34px}.auth-heading>p{font-size:12px;letter-spacing:.08em;color:#858b80;margin:0 0 13px}.auth-heading h2{font-size:29px;font-weight:400;line-height:1.5;margin:0;color:#202321}
.account-auth .account-form{gap:20px}.account-auth .account-field{font-size:12px;color:#71796b;font-weight:400;gap:0;line-height:1.7}
.account-auth .account-field input{width:100%;height:39px;border:0;border-bottom:1px solid #d8dcd3;border-radius:0;padding:4px 0 8px;background:transparent;color:#242b20;font-size:16px;box-shadow:none}
.account-auth .account-field input::placeholder{color:#a2a99a;font-size:12px}.account-auth .account-field input:focus{outline:0;border-bottom-color:#4e6543;box-shadow:0 1px #4e6543}
.account-auth .account-field:focus-within>span{color:#3b5130}
.account-auth .account-submit{width:100%;min-height:48px;border-radius:0;border:1px solid #303b29;background:#303b29;color:#fff;font-size:15px;font-weight:400;margin-top:14px;transition:background .2s}
.account-auth .account-submit:hover{background:#49553f}.account-auth .account-submit:disabled{opacity:.6;cursor:wait}
.account-auth .account-switch{font-size:13px;gap:9px;margin-top:17px;color:#8a9083;justify-content:center;flex-wrap:wrap}.account-auth .account-switch button{font-size:13px;font-weight:400;color:#434f39;min-height:40px}
.account-auth .account-feedback,.account-auth .account-notice{font-size:13px;border-radius:0;margin:0 0 18px;line-height:1.7}
@media(max-width:1000px){.comparison-table th,.comparison-table td{padding-inline:18px}.comparison-table .feature-column{width:32%}.comparison-table h4{font-size:24px}.comparison-table .button{font-size:13px;padding-inline:7px}.auth-panel{padding-inline:32px}.trial-redesigned .trial-option{padding:28px}.trial-redesigned .f-trial-card-head h4{font-size:22px}}
@media(max-width:700px){
 .comparison-heading h3{font-size:26px}.comparison-heading{margin-bottom:22px}.plan-selector{display:flex;gap:0;border-bottom:1px solid #bec7b4;margin-bottom:22px}.plan-selector button{flex:1;border:0;border-bottom:2px solid transparent;background:transparent;font-size:18px;color:#8a9281;min-height:54px;padding:10px 5px}.plan-selector button[aria-pressed=true]{color:#26351e;border-color:#344b28}
 .plan-selector{position:sticky;top:72px;z-index:5;background:#f3f4ef}.comparison-table thead th{top:126px}
 .comparison-table .feature-column{width:55%}.comparison-table col:nth-child(2){width:45%}.comparison-table col:nth-child(n+3){display:none}.comparison-table th,.comparison-table td{padding:19px 14px;font-size:14px}.comparison-table th:first-child{padding-left:0}.comparison-table tbody th>span{font-size:15px}.comparison-table small{font-size:12px;line-height:1.85}.comparison-table h4{font-size:23px}.comparison-table thead th{padding-block:20px 25px}.comparison-table thead th:first-child{padding-top:28px;font-size:13px}.comparison-table thead p{font-size:12px}.comparison-table td[data-plan],.comparison-table th[data-plan]{background:#e9ede3}
 .plan-comparison[data-active-plan=basic] [data-plan]:not([data-plan=basic]),.plan-comparison[data-active-plan=enhanced] [data-plan]:not([data-plan=enhanced]),.plan-comparison[data-active-plan=flagship] [data-plan]:not([data-plan=flagship]){display:none}
 .comparison-table .button{min-height:46px;font-size:13px;padding-inline:8px}.comparison-table tfoot td{padding-inline:10px}
 .trial-redesigned{padding-top:40px;margin-top:45px}.trial-redesigned .f-trial-intro{display:block;margin-bottom:28px}.trial-redesigned .f-trial-intro h3{font-size:28px}.trial-redesigned .f-trial-lead{font-size:14px;margin-top:20px}.trial-redesigned .f-trial-lead br{display:none}.trial-redesigned .f-trial-options{grid-template-columns:1fr;gap:22px}.trial-redesigned .trial-option{padding:27px 25px 24px}.trial-redesigned .f-trial-card-head{margin-bottom:25px}.trial-lesson h5{font-size:22px}.trial-redesigned .f-trial-note{font-size:13px;margin-top:25px}.trial-redesigned .f-trial-process{font-size:14px;margin-top:23px}.trial-redesigned .f-trial-footer{flex-direction:column-reverse;align-items:stretch;gap:16px;margin-top:24px}.trial-redesigned .f-trial-footer .a-btn{width:100%}
 .account-dialog.account-auth{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.auth-shell{grid-template-columns:1fr;min-height:0}.auth-visual{height:145px;min-height:0}.auth-visual>img{object-position:50% 44%}.auth-visual::after{background:linear-gradient(90deg,#0007,transparent)}.auth-visual-copy{bottom:22px;left:26px}.auth-visual-copy p{font-size:11px;margin-bottom:8px}.auth-visual-copy h3{font-size:21px;line-height:1.45}.auth-visual-copy h3 br{display:none}.auth-panel{padding:29px 28px 23px}.auth-heading{margin-bottom:25px}.auth-heading>p{display:none}.auth-heading h2{font-size:26px}.account-auth .account-close{top:12px;right:12px;z-index:3}.account-auth .account-form{gap:17px}.account-auth .account-field input{height:39px}.account-auth .account-submit{margin-top:12px}.account-auth .account-switch{margin-top:12px}
 .auth-shell[data-auth-mode=register] .auth-visual{display:none}.auth-shell[data-auth-mode=register] .account-form{gap:14px}.auth-shell[data-auth-mode=register] .auth-panel{padding-top:32px}
}
@media(min-width:701px) and (max-width:1100px){.comparison-table thead th{top:72px}}
@media(max-width:600px){.plan-selector{top:64px}.comparison-table thead th{top:118px}}
@media(prefers-reduced-motion:reduce){.account-auth .account-submit{transition:none}}
