﻿/*
Theme Name: Travel with Tryfonova
Theme URI: https://japan.tryfonovamd.com/
Author: Travel with Tryfonova
Version: 1.0.0
Text Domain: travel-with-tryfonova
*/

:root{--paper:#f8f4ec;--paper-2:#efe7da;--ink:#211c19;--muted:#736960;--gold:#b8954f;--red:#987116;--red-dark:#79580d;--white:#fffdf9;--line:#d8cbb7;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
body.admin-bar .site-header{top:32px}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.eyebrow{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.section{padding:clamp(72px,9vw,132px) 0}
.section-title{font:400 clamp(40px,5.4vw,76px)/1.02 var(--serif);letter-spacing:-.035em;margin:16px 0 28px;max-width:920px}
.lead{max-width:750px;color:var(--muted);font-size:clamp(17px,2vw,21px)}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.22);border-bottom:1px solid transparent;transition:.25s}
.site-header.is-scrolled{background:rgba(248,244,236,.94);color:var(--ink);text-shadow:none;backdrop-filter:blur(14px);border-color:rgba(33,28,25,.12)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{text-decoration:none;font:400 19px/1 var(--serif);letter-spacing:.08em}
.brand span{display:block;margin-top:5px;font:italic 12px/1 var(--serif);letter-spacing:.12em;color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{text-decoration:none;font-size:13px}
.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 24px;border:1px solid var(--red);border-radius:999px;background:var(--red);color:#fff;text-decoration:none;font-weight:700;transition:.2s;cursor:pointer}
.btn:hover{transform:translateY(-2px);background:var(--red-dark);border-color:var(--red-dark);box-shadow:0 10px 24px rgba(96,70,12,.22)}
.btn--light{background:rgba(255,255,255,.93);border-color:#fff;color:var(--ink)}
.btn--outline{background:transparent;border-color:#fff;color:#fff}
.menu-toggle{display:none;border:0;background:none;font:700 13px var(--sans)}
.hero{min-height:100svh;display:grid;align-items:end;position:relative;overflow:hidden;background:#28221f;color:#fff}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,15,13,.88) 0%,rgba(18,15,13,.62) 48%,rgba(18,15,13,.25) 82%),linear-gradient(0deg,rgba(18,15,13,.7),rgba(18,15,13,.04) 58%)}
.hero-content{position:relative;z-index:2;padding:160px 0 76px}
.hero .eyebrow{color:#e0c181}
.hero h1{max-width:850px;font:400 clamp(58px,8.5vw,124px)/.88 var(--serif);letter-spacing:-.055em;margin:22px 0}
.hero h1 em{display:block;font-weight:400;color:#f2d7a3}
.hero-copy{max-width:690px;font-size:clamp(18px,2vw,23px);color:rgba(255,255,255,.88)}
.hero-meta{display:flex;gap:28px;flex-wrap:wrap;margin:34px 0}
.hero-meta span{font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(44px,8vw,110px);align-items:center}
.portrait-frame{position:relative;padding:0 44px 44px 0}
.portrait-frame:before{content:'';position:absolute;right:0;bottom:0;width:65%;height:58%;background:var(--paper-2);border-radius:50% 50% 8px 8px}
.portrait-frame img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:260px 260px 12px 12px}
.signature{font:italic 28px var(--serif);color:var(--red);margin-top:30px}
.manifesto{background:var(--ink);color:#fff}
.manifesto-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.manifesto .section-title{margin-top:0}
.manifesto-quote{font:400 clamp(31px,4vw,57px)/1.14 var(--serif);color:#f5ead7;margin:0}
.manifesto-quote span{color:#d4ae67}
.medical{background:var(--white)}
.medical-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.medical-photo{position:relative}
.medical-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}
.medical-card{margin-left:-110px;position:relative;background:var(--paper);padding:clamp(34px,5vw,66px);box-shadow:0 30px 80px rgba(41,31,22,.12)}
.proof-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:62px}
.proof{padding:26px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:17px;border:1px solid color-mix(in srgb,var(--red) 38%,transparent);border-radius:50%;color:var(--red);transition:background .3s ease,color .3s ease,transform .3s ease}
.proof-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.proof span{display:block;font-size:13px;line-height:1.45;color:var(--muted)}
.proof:hover .proof-icon{background:var(--red);color:#fff;transform:translateY(-3px)}
.journey{overflow:hidden}
.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:58px;counter-reset:step}
.timeline-item{counter-increment:step;padding:28px;border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:220px}
.timeline-item:first-child{border-left:1px solid var(--line)}
.timeline-item:before{content:'0' counter(step);display:block;color:var(--gold);font:400 14px var(--serif);margin-bottom:38px}
.timeline-item h3{font:400 24px var(--serif);margin:0 0 10px}
.timeline-item p{font-size:14px;color:var(--muted)}
.culture-banner{position:relative;min-height:72vh;display:flex;align-items:flex-end;color:#fff}
.culture-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.culture-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,16,12,.94) 0%,rgba(20,16,12,.56) 45%,rgba(20,16,12,.16) 82%)}
.culture-copy{position:relative;z-index:1;padding-bottom:76px}
.culture-copy h2{font:400 clamp(48px,7vw,90px)/.94 var(--serif);max-width:850px;margin:15px 0}
.packages{background:#f3ede2}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px}
.package{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:34px;display:flex;flex-direction:column;min-height:650px}
.package--featured{transform:translateY(-14px);border-color:var(--red);box-shadow:0 24px 55px rgba(65,35,28,.1)}
.package-label{font-size:11px;letter-spacing:.16em;color:var(--gold)}
.package h3{font:400 31px/1.04 var(--serif);margin:14px 0}
.package-date{font-size:13px;color:var(--muted)}
.package-price{font:400 37px var(--serif);margin:24px 0 4px}
.package-price-note{font-size:12px;color:var(--muted)}
.package ul{padding:0 0 0 20px;margin:28px 0;list-style:disc}
.package li{padding:10px 0 10px 2px;border-bottom:1px solid #ebe3d6;font-size:14px}
.package li::marker{color:var(--gold)}
.package .btn{margin-top:auto}
.not-included{margin-top:28px;padding:22px 28px;border:1px solid var(--line);border-radius:14px;color:var(--muted);font-size:14px}
.download-section{background:var(--ink);color:#fff}
.download-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.download-preview{position:relative}
.download-preview img{width:72%;margin:auto;aspect-ratio:4/5;object-fit:cover;border-radius:6px;transform:rotate(-3deg);box-shadow:0 30px 65px rgba(0,0,0,.3)}
.download-preview:after{content:'PRICE GUIDE';position:absolute;right:0;bottom:40px;background:var(--red);padding:14px 22px;font-size:12px;letter-spacing:.14em}
.download-section .twt-price-capture{margin:0;background:#f7f2e8;color:var(--ink)}
.faq{background:var(--white)}
.faq-list{max-width:880px;margin:48px auto 0}
.faq-item{border-top:1px solid var(--line)}
.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-question{width:100%;padding:24px 0;border:0;background:none;text-align:left;font:400 23px var(--serif);display:flex;justify-content:space-between;gap:20px;color:var(--ink);cursor:pointer}
.faq-question span:last-child{color:var(--gold)}
.faq-answer{display:none;padding:0 50px 24px 0;color:var(--muted)}
.faq-item.is-open .faq-answer{display:block}
.final-cta{position:relative;min-height:78vh;display:flex;align-items:center;color:#fff}
.final-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.final-cta:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,16,12,.94) 0%,rgba(20,16,12,.68) 52%,rgba(20,16,12,.28) 100%)}
.final-inner{position:relative;z-index:1}
.final-inner h2{font:400 clamp(49px,7vw,92px)/.96 var(--serif);max-width:800px;margin:14px 0 24px}
.site-footer{padding:36px 0;background:#171310;color:#d9d0c5}
.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer-grid p{margin:0;font-size:12px;color:#968b80}
.sticky-mobile{display:none}
.modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(20,15,13,.72)}
.modal.is-open{display:flex}
.modal-dialog{position:relative;max-width:900px;width:100%;max-height:92vh;overflow:auto}
.modal-close{position:absolute;z-index:3;right:18px;top:18px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:20px;cursor:pointer}
.modal .twt-price-capture{margin:0}
@media(max-width:980px){.nav-links a:not(.btn){display:none}
.intro-grid,.medical-grid,.manifesto-grid,.download-layout{grid-template-columns:1fr}
.medical-card{margin:-40px 24px 0}
.proof-grid{grid-template-columns:repeat(2,1fr)}
.timeline{grid-template-columns:1fr 1fr}
.package-grid{grid-template-columns:1fr}
.package--featured{transform:none}
.package{min-height:auto}
.download-preview{display:none}
}
@media(max-width:700px){body.admin-bar .site-header{top:46px}
.container{width:min(100% - 28px,1180px)}
.nav{height:68px}
.nav-links{display:none;position:absolute;left:14px;right:14px;top:72px;padding:16px;background:var(--paper);border:1px solid var(--line);border-radius:14px}
.nav-links.is-open{display:flex;align-items:stretch;flex-direction:column}
.nav-links.is-open{color:var(--ink);text-shadow:none}
.nav-links a:not(.btn){display:block}
.menu-toggle{display:block}
.hero-content{padding:130px 0 80px}
.hero h1{font-size:58px}
.hero-actions .js-open-form{display:none}
.hero-meta{gap:12px;flex-direction:column}
.section{padding:72px 0}
.portrait-frame{padding:0 20px 20px 0}
.proof-grid,.timeline{grid-template-columns:1fr}
.timeline-item{min-height:auto;border-left:1px solid var(--line)}
.package{padding:26px}
.culture-banner{min-height:620px}
.footer-grid{align-items:flex-start;flex-direction:column}
.sticky-mobile{display:block;position:fixed;z-index:90;left:12px;right:12px;bottom:12px}
.sticky-mobile .btn{width:100%;box-shadow:0 8px 28px rgba(0,0,0,.28)}
.site-footer{padding-bottom:100px}
}

/* Thank you */
.thank-you-page .site-header{background:rgba(248,244,236,.96);color:var(--ink);box-shadow:0 1px 0 rgba(33,28,25,.08)}
.thank-you-main{padding-top:82px}.thank-you-hero{position:relative;min-height:72vh;display:flex;align-items:center;overflow:hidden;color:#fff}.thank-you-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%}.thank-you-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,15,12,.88) 0%,rgba(18,15,12,.68) 44%,rgba(18,15,12,.18) 78%),linear-gradient(0deg,rgba(18,15,12,.55),transparent 55%)}.thank-you-content{position:relative;z-index:1;padding-top:80px;padding-bottom:80px;max-width:760px}.thank-you-mark{width:58px;height:58px;border:1px solid rgba(255,255,255,.6);border-radius:50%;display:grid;place-items:center;font-size:25px;margin-bottom:25px}.thank-you-content h1{font-family:Georgia,serif;font-size:clamp(54px,7vw,104px);font-weight:400;line-height:.94;margin:14px 0 24px}.thank-you-content>p{max-width:650px;font-size:clamp(18px,2vw,23px);line-height:1.55;color:rgba(255,255,255,.88)}.thank-you-package{display:flex;flex-direction:column;gap:5px;padding:18px 0;margin-top:24px;border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3);max-width:550px}.thank-you-package span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#e4c77d}.thank-you-package strong{font-family:Georgia,serif;font-size:23px;font-weight:400}.thank-you-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.thank-you-next{padding:90px 0;background:var(--cream)}.thank-you-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:35px;border-top:1px solid var(--line)}.thank-you-steps>div{padding:32px 34px 10px 0;border-right:1px solid var(--line)}.thank-you-steps>div+div{padding-left:34px}.thank-you-steps>div:last-child{border-right:0}.thank-you-steps strong{color:var(--red);font-size:13px}.thank-you-steps h2{font-family:Georgia,serif;font-weight:400;font-size:27px;margin:18px 0 10px}.thank-you-steps p{color:var(--muted);line-height:1.6}
@media(max-width:700px){.thank-you-main{padding-top:68px}.thank-you-page .nav>.btn{display:none}.thank-you-hero{min-height:calc(100svh - 68px);align-items:flex-end}.thank-you-hero>img{object-position:58% center}.thank-you-shade{background:linear-gradient(0deg,rgba(18,15,12,.94) 0%,rgba(18,15,12,.72) 58%,rgba(18,15,12,.28) 100%)}.thank-you-content{padding-top:110px;padding-bottom:42px}.thank-you-content h1{font-size:52px}.thank-you-content>p{font-size:17px}.thank-you-actions{display:grid}.thank-you-actions .btn{width:100%}.thank-you-next{padding:62px 0}.thank-you-steps{grid-template-columns:1fr}.thank-you-steps>div,.thank-you-steps>div+div{padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.thank-you-steps>div:last-child{border-bottom:0}}

/* Motion and responsive finishing pass */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.package,.proof,.timeline-item{transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease}
.package:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(70,53,18,.12);border-color:var(--gold)}
.package--featured:hover{transform:translateY(-20px)}
.portrait-frame img,.culture-banner img,.final-cta>img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.portrait-frame:hover img{transform:scale(1.025)}
html body .twt-price-form button,html body .twt-download-link{background:var(--red)}
html body .twt-price-form button:hover,html body .twt-download-link:hover{background:var(--red-dark)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal.is-visible,.package,.portrait-frame img,.culture-banner img,.final-cta>img{opacity:1;transform:none!important;transition:none!important}}
@media(max-width:700px){
  .brand{max-width:230px;font-size:15px;letter-spacing:.055em}
  .brand span{font-size:10px}
  .hero-media img{object-position:58% center}
  .hero-media:after{background:linear-gradient(90deg,rgba(18,15,13,.9),rgba(18,15,13,.43)),linear-gradient(0deg,rgba(18,15,13,.82),rgba(18,15,13,.05) 64%)}
  .hero-content{padding:118px 0 118px}
  .hero h1{font-size:clamp(46px,14vw,56px);line-height:.91;letter-spacing:-.045em}
  .hero-copy{font-size:17px;line-height:1.55}
  .hero-actions{width:100%}
  .hero-actions .btn{width:100%}
  .medical-card{margin:-24px 8px 0;padding:30px 22px}
  .section-title{font-size:clamp(38px,12vw,52px)}
  .package{min-width:0;padding:24px 20px}
  .package h3{font-size:28px}
  .package-price{font-size:34px}
  .not-included{padding:18px 16px}
  .modal{padding:8px;align-items:flex-start}
  .modal-dialog{max-height:calc(100svh - 16px);margin-top:8px;border-radius:16px}
  .modal .twt-price-capture{margin:0;padding:54px 18px 24px;border-radius:16px}
  .modal .twt-price-capture h3{font-size:34px;line-height:1.05}
  .modal-close{position:fixed;right:18px;top:18px}
  .download-section .twt-price-capture{margin:0;padding:30px 18px}
  .culture-copy,.final-inner{padding-right:4px}
}


