@charset "utf-8";

@media screen {
  .site-header nav > a:not(.button) { font-size: 13px; }
  .hero-description { font-size: 15px; }
  .hero-actions .button { font-size: 13px; }
  .hero-facts { font-size: 11px; flex-wrap: wrap; }
  .section-heading > p:last-child, .section-heading > div + p { font-size: 15px; }
  .question-item p { font-size: 14px; }
  .honest-note p { font-size: 12px; }
  .week-tab { flex: 1 1 0%; }
  .week-tab small { font-size: 9px; }
  .week-tab-detail { font-size: 11px; }
  .week-panel > p { font-size: 14px; }
  .check-list { font-size: 13px; }
  .takeaway strong { font-size: 12px; }
  .takeaway small { font-size: 8px; color: rgb(86, 104, 74); }
  .panel-time { font-size: 10px; }
  .program-bottom > span, .program-bottom .text-button { font-size: 12px; }
  .approach-copy > p:not(.eyebrow) { font-size: 14px; }
  .couple-note strong, .couple-note p { font-size: 13px; }
  .founder strong { font-size: 14px; }
  .founder p span { font-size: 11px; }
  .pilot-note p { font-size: 13px; }
  .pilot-dates { font-size: 12px; }
  .light-link { font-size: 12px; }
  .price-card-heading > span:first-child { font-size: 10px; }
  .price > span { font-size: 12px; }
  .price-intro { font-size: 13px; }
  .included-list { font-size: 13px; }
  .price-caption { font-size: 11px; }
  .faq-list summary { font-size: 14px; }
  .faq-answer p { font-size: 14px; }
  .faq-answer > a { font-size: 12px; }
  .last-step-caption { font-size: 12px; }
  .footer-top > p { font-size: 12px; }
  .footer-bottom { font-size: 11px; }
  .footer-disclaimer { font-size: 10px; }
  .dialog-description { font-size: 14px; }
  form > label, .form-row > label { font-size: 12px; }
  form > .consent, .preview-notice p { font-size: 12px; }
  .field-help, .form-caption { font-size: 11px; }
  input:not([type="checkbox"]), select, textarea { font-size: 14px; }
  .result-note, .legal-content p { font-size: 13px; }
  .panel-time, .price > span, .price-caption, .field-help, .footer-bottom, .footer-disclaimer, .last-step-caption, .form-caption, .hero-facts, .week-tab-detail, .program-bottom > span, .footer-top > p { color: rgb(86, 99, 79); }
  input::placeholder, textarea::placeholder { color: rgb(101, 112, 92); }
  .week-tab.active .week-tab-detail { color: rgb(199, 211, 199); }
  .week-tab small { color: rgb(87, 103, 77); }
  .week-tab.active small { color: rgb(198, 210, 191); }
  .mobile-cta small { color: rgb(86, 99, 79); }
}

@media screen and (max-width: 900px) {
  .site-header nav > a:not(.button) { font-size: 11px; }
  .hero-actions .button { font-size: 11px; }
  .hero-facts { font-size: 10px; }
  .hero-description { font-size: 14px; }
  .week-tab-detail { font-size: 10px; }
  .price > span { font-size: 10px; }
  .included-list { font-size: 12px; }
  .price-card-heading > span:first-child { font-size: 8px; }
}

@media screen and (max-width: 760px) {
  .site-header nav > a:not(.button) { font-size: 14px; }
  .hero-actions .button { font-size: 12px; }
  .hero-facts { font-size: 10px; gap: 12px 17px; }
  .section-heading > p:last-child, .section-heading > div + p { font-size: 14px; }
  .week-tab small { font-size: 7px; }
  .question-item p, .approach-copy > p:not(.eyebrow) { font-size: 14px; }
  .week-panel { min-height: 480px; }
  .program-bottom > span, .program-bottom .text-button { font-size: 11px; }
  .price-card-heading > span:first-child { font-size: 9px; }
  .included-list { font-size: 13px; }
  .price > span { font-size: 11px; }
  .faq-list summary { font-size: 14px; }
  .footer-bottom { font-size: 10px; }
  .footer-top > p { font-size: 11px; }
  .footer-disclaimer { font-size: 10px; }
  input:not([type="checkbox"]), select, textarea { font-size: 16px; }
  .preview-notice p { font-size: 11px; }
  .form-caption, .price-caption { font-size: 11px; }
  form > .consent { font-size: 12px; }
}

@media screen {
  .hero { min-height: 630px; padding-bottom: 70px; }
  .hero-actions { margin-top: 34px; }
  .hero-visual { padding-bottom: 0px; }
  .questions-intro .section-heading { margin-bottom: 34px; }
  .question-item h3 { margin-bottom: 9px; }
  .program .section-heading { margin-bottom: 34px; }
  .week-tab { min-height: 75px; }
  .week-panel { min-height: 365px; padding: 33px; }
  .week-panel h3 { margin: 0px 0px 28px; }
  .week-panel .check-list { margin: 0px 0px 28px; }
  .program-bottom { justify-content: flex-end; }
  .approach-image { padding-bottom: 12px; }
  .approach-copy h2 { margin-bottom: 23px; }
  .price-card .included-list { border-top: 1px solid rgb(218, 221, 208); padding-top: 22px; }
  .last-step { padding-block: 64px; }
  .footer-top .text-button { font-size: 12px; }
}

@media screen and (max-width: 760px) {
  .hero { min-height: 0px; padding-top: 37px; padding-bottom: 65px; }
  .hero-actions { margin-top: 25px; }
  .hero-visual { padding-bottom: 0px; }
  .week-tab { min-height: 78px; }
  .week-panel { min-height: 325px; padding: 26px 24px; }
  .week-panel h3 { font-size: 28px; margin-bottom: 24px; }
  .week-panel .check-list { margin-bottom: 25px; }
  .program-bottom { align-items: flex-end; }
  .approach-image { padding-bottom: 9px; }
  .last-step { padding-block: 48px; }
}

@media screen {
  .hero .promise-title { font-size: clamp(44px, 4.8vw, 64px); line-height: 1.12; letter-spacing: -2.3px; }
  .hero .promise-title .headline-stroke { width: 310px; }
  .illustration-caption { position: absolute; bottom: 22px; left: 25px; z-index: 1; background: rgba(26, 47, 35, 0.7); color: rgb(255, 255, 255); border-radius: 4px; padding: 5px 9px; font-size: 10px; line-height: 1.5; letter-spacing: 0.2px; }
  .anne-lead { display: grid; grid-template-columns: 148px minmax(0px, 1fr); align-items: center; gap: 48px; padding: 48px; border: 1px solid rgb(213, 221, 205); border-radius: 17px; background: var(--cream); }
  .anne-monogram { display: grid; place-items: center; width: 148px; height: 166px; border-radius: 85px 85px 25px 25px; background: rgb(234, 216, 200); color: var(--clay); font-family: var(--serif); font-size: 84px; line-height: 1; }
  .anne-copy h2 { margin-bottom: 24px; }
  .anne-copy p { max-width: 700px; font-size: 16px; line-height: 1.85; }
  .anne-copy .anne-bio { color: var(--ink); margin-bottom: 15px; }
}

@media screen and (max-width: 760px) {
  .hero .promise-title { font-size: clamp(34px, 9.7vw, 52px); letter-spacing: -1.25px; }
  .hero .promise-title .headline-stroke { width: 230px; }
  .illustration-caption { bottom: 18px; left: 18px; font-size: 10px; }
  .anne-lead { grid-template-columns: 1fr; gap: 24px; padding: 26px 24px; border-radius: 13px; }
  .anne-monogram { width: 78px; height: 88px; border-radius: 45px 45px 17px 17px; font-size: 49px; }
  .anne-copy h2 { font-size: clamp(28px, 7.8vw, 36px); letter-spacing: -1px; margin-bottom: 20px; }
  .anne-copy p { font-size: 14px; line-height: 1.85; }
  .anne-copy .anne-bio { margin-bottom: 13px; }
}

@media screen {
  .hero .launch-eyebrow { display: inline-grid; grid-template-columns: 6px minmax(0px, 1fr); gap: 9px; max-width: 100%; padding: 0px; border: 0px; background: none; color: rgb(135, 69, 46); font-size: 11px; line-height: 1.6; letter-spacing: 1px; }
  .launch-offer .price-card-heading > span:first-child { color: var(--clay); font-weight: 700; }
  .launch-offer .pilot-tag { background: none; border: 0px; padding: 0px; color: rgb(139, 69, 46); font-size: 11px; }
  .launch-offer .price > strong { color: var(--clay); }
  .launch-next { font-size: 12px; line-height: 1.8; color: rgb(86, 99, 79); margin: 4px 0px 20px; }
  .launch-next strong { color: var(--ink); font-weight: 600; white-space: nowrap; }
  .hero-actions { flex-direction: column; align-items: flex-start; gap: 9px; }
  .contact-destination { font-size: 12px; line-height: 1.6; color: rgb(86, 99, 79); }
  .hero-actions .contact-destination { padding-left: 2px; }
  .anne-handle { display: inline-flex; align-items: center; gap: 8px; margin-top: 19px; font-size: 13px; line-height: 1.6; color: rgb(86, 99, 79); }
  .anne-handle .icon, .instagram-profile .icon { width: 17px; height: 17px; }
  .approach { padding-block: 66px; }
  .questions-intro { background: var(--paper); }
  .last-step .contact-destination { margin-top: 10px; }
  .instagram-profile { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; text-underline-offset: 4px; }
  .legal-content { padding-top: 50px; }
}

@media screen and (max-width: 760px) {
  .header-contact { display: none; }
  .header-inner { height: 68px; }
  .hero { gap: 32px; padding-bottom: 42px; }
  .hero-actions { gap: 8px; }
  .hero-actions .button { width: 100%; font-size: 14px; min-height: 52px; }
  .hero-actions .contact-destination { align-self: center; }
  .hero-picture { height: 230px; max-height: 65vw; border-radius: 75px 10px; }
  .hero-visual { padding-left: 0px; padding-right: 0px; }
  .hero-flower { right: -3px; width: 48px; }
  .approach { padding-block: 45px; }
  .anne-lead { padding: 25px 23px; gap: 21px; }
  .mobile-cta { gap: 0px; padding: 10px 21px max(10px,env(safe-area-inset-bottom)); }
  .mobile-cta .button { min-height: 46px; font-size: 13px; }
  .site-footer { padding-bottom: 105px; }
}

@media screen {
  .program-steps { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 42px 64px; list-style: none; padding: 0px; margin: 0px; }
  .program-step { display: flex; flex-direction: column; min-width: 0px; padding-top: 24px; border-top: 1px solid rgb(203, 211, 196); }
  .step-week { color: rgb(139, 78, 54); font-size: 11px; line-height: 1.6; font-weight: 650; letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 10px; }
  .program-step h3 { font-size: 31px; line-height: 1.2; letter-spacing: -0.6px; margin-bottom: 18px; }
  .step-topics { padding-left: 18px; margin-bottom: 20px; font-size: 14px; line-height: 1.85; color: rgb(86, 99, 79); list-style: disc; }
  .step-topics li + li { margin-top: 5px; }
  .step-topics li::marker { color: rgb(123, 141, 109); font-size: 10px; }
  .step-result { margin-top: auto; font-size: 14px; line-height: 1.8; color: rgb(86, 99, 79); }
  .step-result strong { color: var(--ink); font-weight: 600; }
  .question-item .illustrated-icon { background: none; border-radius: 0px; }
  .faq-plus { width: 13px; height: 13px; color: rgb(98, 117, 79); }
  .faq-plus::before { left: 2px; top: 1px; width: 8px; height: 8px; background: none; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg); transition: transform 0.2s; }
  .faq-plus::after { display: none; }
  .faq-list details[open] .faq-plus::before { transform: translateY(4px) rotate(225deg); }
  .footer-bottom button, .footer-bottom a { text-decoration: underline; text-underline-offset: 3px; }
}

@media screen and (max-width: 760px) {
  .program-steps { grid-template-columns: minmax(0px, 1fr); gap: 30px; }
  .program-step { padding-top: 21px; }
  .program-step h3 { font-size: 27px; margin-bottom: 14px; }
  .step-week { margin-bottom: 8px; font-size: 10px; }
  .step-topics { font-size: 14px; line-height: 1.75; margin-bottom: 15px; }
  .step-result { font-size: 14px; line-height: 1.75; }
}