@font-face{font-family:JDO Editorial;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/CormorantGaramond-Medium.ttf) format("truetype")}@font-face{font-family:JDO Editorial;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/CormorantGaramond-Italic.ttf) format("truetype")}:root{--background:#f4f2ed;--foreground:#253447;--card:#fffdf9;--card-foreground:#253447;--popover:#fffdf9;--popover-foreground:#253447;--primary:#263e55;--primary-foreground:#fffaf0;--secondary:#eae3d6;--secondary-foreground:#263e55;--muted:#eeebe3;--muted-foreground:#586674;--accent:#e8edf0;--accent-foreground:#21374d;--border:#d9d8d2;--input:#bac3cb;--ring:#486982;--radius:.4rem;--champagne:#dec7a1;--navy:#21374d}.module-card h3,.photo-caption,.serif,h1,h2{font-family:JDO Editorial,Georgia,serif;font-weight:500;letter-spacing:-.02em}h1{font-size:clamp(2.3rem,4vw,3.3rem)}h2{font-size:2.4rem}.main-nav,.site-header{background:var(--card)}.site-header{min-height:106px;padding-top:12px;padding-bottom:12px}.brand .brand-logo{width:235px}.header-note{color:var(--muted-foreground)}.container{padding-top:30px}.page-heading{margin-bottom:22px}.page-heading .eyebrow{font-size:11px}.page-heading p{font-size:15px}.nav-tabs [data-slot=tabs-trigger]{color:var(--muted-foreground)!important}.nav-tabs [data-slot=tabs-trigger][data-state=active]:after{background:var(--primary)}.account-button,.primary,.secondary{border-radius:3px}.primary:hover{background:#182f43}.welcome{grid-template-columns:1.18fr 1fr;background:var(--navy);border-radius:3px;color:#fffaf0}.welcome-copy{padding:38px 40px}.welcome h2{font-size:clamp(2.8rem,4.8vw,4.5rem);line-height:1.02;margin-bottom:23px}.welcome h2 em{color:var(--champagne);font-weight:400}.welcome .pill{font-size:11px;letter-spacing:.16em;color:var(--champagne)}.welcome p{font-size:16px;line-height:1.75;color:#f5f1e9;max-width:390px}.welcome .primary.light{background:var(--champagne);color:var(--navy);border-radius:3px}.welcome .primary.light:hover{background:#e8d6b8}.welcome-copy>small{color:#e0e7ec;font-size:12px}.welcome-photo{overflow:hidden;background:#b7b0a2;min-height:370px}.welcome-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:69% 45%}.photo-caption{bottom:42px;left:20px;right:20px;background:#fffdf9;color:var(--primary);text-align:center;transform:none;box-shadow:none;font-size:24px;line-height:1.15;padding:15px 18px}.photo-credit{position:absolute;left:20px;bottom:12px;background:#21374de8;color:#fffaf0;padding:2px 7px;font-size:11px}.trainer-medallion{display:flex;gap:16px;align-items:center;padding-top:21px;margin-top:25px;border-top:1px solid #dec7a144;text-decoration:none;color:#fffaf0;max-width:390px}.trainer-medallion>img{width:76px;height:76px;border-radius:50%;object-fit:cover;object-position:center 40%;border:2px solid var(--champagne);box-shadow:0 0 0 4px #dec7a114;flex:none}.trainer-medallion>span{display:flex;flex-direction:column;gap:2px}.trainer-medallion strong{font-weight:500;font-size:20px}.trainer-medallion>span>span{font-size:13px;color:var(--champagne)}.trainer-medallion small{font-size:12px;color:#e0e7ec}.trainer-medallion:hover strong{text-decoration:underline;text-underline-offset:4px}.welcome-strip{font-size:13px;color:var(--muted-foreground)}.wedding-timeline{background:#f0ebe1;border-color:var(--border);border-radius:4px;margin-top:25px}.timeline-empty{position:relative;isolation:isolate;overflow:hidden}.timeline-empty:before{content:"";position:absolute;inset:0 0 0 auto;width:50%;background:url(/wedding.jpg) center 55%/cover no-repeat;opacity:.17;mask-image:linear-gradient(90deg,transparent,#000 80%);z-index:-1;pointer-events:none}.timeline-empty .primary{background:var(--card);border:1px solid #bec5ca;color:var(--primary)}.timeline-empty .primary:hover{background:#fff}.timeline-empty h2{font-size:32px}.timeline-empty .icon-tile{background:var(--card);border-radius:3px}.timeline-heading h2{font-size:32px}.module-card{background:var(--card);border-radius:3px;box-shadow:none}.module-card:hover{border-color:#728698}.module-card.first-module{border-top:3px solid var(--primary);padding-top:23px}.module-card h3{font-size:29px;line-height:1.12}.module-card p{font-size:14px;color:var(--muted-foreground)}.module-status{color:var(--primary)}.premium-mark{color:#73591e;background:#f0e4ca}.pricing-section{background:var(--secondary);border-radius:4px}.launch-offer{background:linear-gradient(135deg,#faf3e6,#eae3d6 58%,#fffdf9);border-color:#d1bd9e;border-radius:5px}.launch-offer-badge{background:var(--primary);color:var(--primary-foreground)}.launch-offer .launch-offer-price strong{color:var(--primary);font-family:JDO Editorial,Georgia,serif;font-weight:500}.launch-offer .launch-offer-future,.launch-offer .launch-offer-invitation,.launch-offer-price>span{color:var(--foreground)}.trainer-introduction{display:flex;align-items:center;gap:32px;margin-top:42px;padding:32px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);scroll-margin-top:25px}.trainer-introduction>img{width:150px;height:150px;object-fit:cover;border-radius:50%;border:3px solid var(--champagne);flex:none}.trainer-introduction h2{font-size:36px;margin:8px 0 13px}.trainer-introduction p{font-size:15px;line-height:1.8;color:var(--muted-foreground);max-width:760px}.trainer-introduction p+p{margin-top:8px}.trainer-introduction .eyebrow{font-size:11px;line-height:1.6}.footer-right{max-width:490px;text-align:right}@media(max-width:1050px){.welcome-copy{padding:32px}.welcome h2{font-size:55px}.welcome p{font-size:15px}}@media(max-width:760px){.site-header{padding:12px 20px}.brand .brand-logo{width:min(210px,100%)}.page-heading h1{font-size:35px}.page-heading{gap:12px}.welcome{grid-template-columns:1fr}.welcome-copy{padding:30px 27px}.welcome h2{font-size:52px}.welcome-photo{min-height:340px}.welcome-photo>img{object-position:69% 40%}.welcome p{font-size:15px}.trainer-medallion{max-width:none}.welcome-strip{font-size:12px}.photo-caption{font-size:23px}.timeline-empty h2{font-size:30px}.module-card h3{font-size:26px}.module-card.first-module{padding-top:16px}.module-card p{font-size:13px}.trainer-introduction{gap:22px;align-items:flex-start}.trainer-introduction>img{width:95px;height:95px}.trainer-introduction h2{font-size:30px}.trainer-introduction p{font-size:14px}.footer-right{text-align:left}}@media(max-width:480px){.trainer-medallion{gap:13px}.trainer-medallion>img{width:66px;height:66px}.trainer-medallion strong{font-size:18px}.trainer-medallion small{font-size:11px}.trainer-medallion>span>span{font-size:12px}.trainer-introduction{flex-direction:column;gap:20px}.trainer-introduction>img{width:112px;height:112px}.timeline-empty>div:nth-child(2){flex-basis:100%}.timeline-empty .primary{font-size:13px}}@media print{.trainer-medallion,.trainer-medallion small,.trainer-medallion>span>span{color:var(--foreground)}.timeline-empty:before{display:none}}