:root{--ink:#112820;--forest:#0c3028;--pine:#18483c;--gold:#d7aa4b;--sand:#f5f0e6;--paper:#fffdf8;--muted:#66736d;--line:#d9dfda;--white:#fff;--shadow:0 20px 60px rgba(12,48,40,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}a{color:inherit}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.serif{font-family:"Libre Caslon Display",serif}.topbar{background:var(--forest);color:#dfeae6;font-size:.86rem;text-align:center;padding:8px 16px}.nav{position:sticky;top:0;z-index:30;background:rgba(255,253,248,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(17,40,32,.1)}.nav-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none}.brand-logo{display:block;width:auto;height:72px;border-radius:8px}.navlinks{display:flex;align-items:center;gap:24px}.navlinks a{text-decoration:none;font-size:.92rem;font-weight:600;color:#355047}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border-radius:999px;background:var(--gold);color:#16251f;text-decoration:none;font-weight:700;border:0}.btn-dark{background:var(--forest);color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.75rem;font-weight:700;color:var(--gold)}
.hero{color:#fff;background:linear-gradient(90deg,rgba(5,27,22,.94),rgba(5,27,22,.64) 55%,rgba(5,27,22,.2)),url('hero-great-wall-family.jpg') center 45%/cover}.hero-inner{min-height:520px;display:flex;align-items:center;padding:70px 0}.hero-copy{max-width:760px}.hero h1{font-size:clamp(3.1rem,7vw,6.2rem);line-height:.93;letter-spacing:-.045em;font-weight:400;margin:18px 0 22px}.hero p{font-size:1.1rem;color:#e0e9e6;max-width:680px}.badges{display:flex;gap:9px;flex-wrap:wrap;margin:26px 0}.badge{padding:8px 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:.82rem;background:rgba(255,255,255,.09)}.ghost{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.45);color:#fff}
.facts{background:#fff;box-shadow:var(--shadow);border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);transform:none;margin-top:24px;margin-bottom:32px;overflow:hidden}.fact{padding:24px;border-right:1px solid var(--line)}.fact:last-child{border:0}.fact span{display:block;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.fact strong{display:block;color:var(--forest);font-size:1.08rem;margin-top:5px}
section{padding:74px 0}.section-head{max-width:780px;margin-bottom:34px}.section-head h2{font-size:clamp(2.35rem,5vw,4.2rem);line-height:1;margin:10px 0 14px;font-weight:400;letter-spacing:-.035em}.section-head p{color:var(--muted);margin:0}.days{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px}.day{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}.day-label{color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.day h3{font-family:"Libre Caslon Display";font-size:1.85rem;line-height:1.15;margin:9px 0 22px}.timeline{list-style:none;padding:0;margin:0}.timeline li{position:relative;padding:0 0 20px 26px;border-left:1px solid #d5ddd8}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";position:absolute;left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--gold)}.time{display:block;font-weight:700;color:var(--forest)}.timeline p{font-size:.9rem;color:var(--muted);margin:3px 0 0}
.details{background:var(--sand)}.detail-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;align-items:start}.price-card{background:var(--forest);color:white;border-radius:24px;padding:32px;position:sticky;top:104px}.price-card .price{font-family:"Libre Caslon Display";font-size:3.4rem;line-height:1;color:var(--gold);margin:12px 0}.price-card p{color:#cbdad5}.price-card .btn{width:100%;margin-top:10px}.includes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.include{background:#fff;border:1px solid #e4ded3;border-radius:14px;padding:15px;font-size:.9rem}.include:before{content:"✓";color:var(--gold);font-weight:700;margin-right:8px}.note{margin-top:22px;padding:18px;border-left:4px solid var(--gold);background:#fff;border-radius:8px;color:#5f5745;font-size:.9rem}.cta{padding:86px 0}.cta-card{background:var(--gold);border-radius:28px;padding:50px;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:36px}.cta-card h2{font-size:clamp(2.35rem,5vw,4.1rem);line-height:1;margin:0 0 14px;font-weight:400}.cta-actions{display:flex;flex-direction:column;gap:10px}.footer{background:#081d18;color:#c7d2ce;padding:40px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer a{color:#fff}.footer small{color:#8fa29b}
@media(max-width:820px){.navlinks{display:none}.facts{grid-template-columns:1fr 1fr}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid var(--line)}.detail-grid,.cta-card{grid-template-columns:1fr}.price-card{position:static}.includes{grid-template-columns:1fr}}
@media(max-width:560px){.wrap{width:min(100% - 28px,1120px)}.brand-logo{height:58px}.nav-inner{min-height:78px}.hero-inner{min-height:570px;padding:52px 0}.hero h1{font-size:3.25rem}.facts{transform:none;margin-top:20px;margin-bottom:24px}.fact{padding:17px 14px}.day{padding:22px}.cta-card{padding:30px 23px}section{padding:60px 0}}

/* Expanded tour planning sections */
.planning{background:var(--paper)}.planning:nth-of-type(even){background:#f2f5f0}.planning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.planning-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:18px}.planning-card h3{font-family:"Libre Caslon Display",serif;font-size:1.65rem;line-height:1.15;margin:0 0 12px;font-weight:400}.planning-card p{margin:0;color:#4d6258}.planning details{background:#fff;border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:18px 22px}.planning summary{font-weight:700;cursor:pointer;color:var(--forest)}.planning details p{margin:10px 0 0;color:#4d6258}.planning .section-head{margin-bottom:26px}.planning .btn{margin-top:22px}@media(max-width:820px){.planning-grid{grid-template-columns:1fr}}

.source-detail{margin-top:34px;padding:30px 34px;background:#fff;border:1px solid var(--line);border-radius:20px;max-width:900px}.source-detail h3{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.1;font-weight:400;margin:8px 0 18px}.source-detail p{color:#40584e;font-size:1rem;margin:0 0 14px}.source-detail .source-link{font-size:.9rem;margin:18px 0 0}.source-detail a{color:var(--forest);font-weight:700;text-underline-offset:3px}@media(max-width:560px){.source-detail{padding:24px 20px}}

/* Published package rate tables */
.pricing-section{background:#f1f5f2;scroll-margin-top:92px}.pricing-section .section-head{display:block;max-width:820px}.pricing-section .section-head p{color:var(--muted);max-width:780px}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff}.table-scroll:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.pricing-section table{width:100%;min-width:670px;border-collapse:collapse;text-align:left}.pricing-section caption{text-align:left;font-size:.9rem;color:#50645b;padding:18px 22px 0}.pricing-section th,.pricing-section td{padding:16px 19px;border-bottom:1px solid var(--line);white-space:nowrap}.pricing-section thead th{background:var(--forest);color:#fff;font-size:.9rem}.pricing-section tbody th{color:var(--forest)}.pricing-section tbody tr:last-child th,.pricing-section tbody tr:last-child td{border-bottom:0}.pricing-section tbody tr:nth-child(even){background:#f9fbf9}.pricing-explainer{max-width:920px;margin-top:22px;color:#40584e}.pricing-explainer p{margin:0 0 12px}.pricing-explainer a{font-weight:700;color:var(--forest);text-underline-offset:3px}@media(max-width:560px){.pricing-section th,.pricing-section td{padding:13px 15px}}

/* 2T option comparison */
.variant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.variant-grid .day{min-width:0}.variant-grid .day h3{margin-bottom:10px}.variant-grid .day>p{margin:0 0 22px;color:#435b50}.variant-grid .variant-note{margin:18px 0 0;font-weight:700;color:var(--pine)}.variant-grid .timeline p{font-size:.95rem}@media(max-width:760px){.variant-grid{grid-template-columns:1fr}}

/* 2T total-price comparison */
.party-totals{margin-top:40px}.party-totals h3{font-size:clamp(1.9rem,3vw,2.8rem);font-weight:400;margin:0 0 8px}.party-totals>p{color:#4c6257;max-width:740px;margin:0 0 18px}.variant-inquire{display:inline-block;margin-top:20px;color:var(--forest);font-weight:700;text-underline-offset:3px}
/* 2T overnight photo supplied by Great Wall Adventure Club */
.hero{background-image:linear-gradient(90deg,rgba(5,27,22,.94),rgba(5,27,22,.70) 55%,rgba(5,27,22,.18)),url('sleep-on-wall-watchtower.jpg');background-position:center 46%}

/* Vehicle upgrade page */
.upgrade-page .upgrade-hero{background-image:linear-gradient(90deg,rgba(5,27,22,.85),rgba(5,27,22,.45) 46%,rgba(5,27,22,.12)),url('vehicle-upgrade-hero.jpg');background-position:center 54%}.upgrade-page .upgrade-hero .hero-copy{max-width:660px}@media(max-width:620px){.upgrade-page .upgrade-hero{background-position:74% center;background-image:linear-gradient(90deg,rgba(5,27,22,.86),rgba(5,27,22,.58)),url('vehicle-upgrade-hero.jpg')}}
.upgrade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.upgrade-card{background:#f5f0e6;border-radius:22px;padding:34px}.upgrade-card h3{font-size:1.5rem;margin:10px 0}.upgrade-card p{color:#435b50;margin-bottom:0}.upgrade-icon{display:inline-grid;place-items:center;border-radius:50%;width:48px;height:48px;background:#18483c;color:#fff;font-weight:700}.upgrade-page .planning{background:#f5f0e6}.upgrade-page .price-card small{font-family:'DM Sans',sans-serif;font-size:1.1rem}.source-link{margin-top:24px}.source-link a,.upgrade-teaser a{font-weight:700;color:#18483c}.upgrade-teaser{margin:30px 0 0;padding:22px 28px;background:#f5f0e6;border-radius:16px}.upgrade-choice{display:flex;align-items:center;gap:10px;font-weight:600}.upgrade-choice input{width:18px;height:18px;flex:none}@media(max-width:760px){.upgrade-grid{grid-template-columns:1fr}}

/* Per-option 2T rate tiers */
.variant-rates{margin:20px 0 24px;padding:20px;border:1px solid #d9dfda;border-radius:16px;background:#fffdf8}.variant-rates .variant-standard{margin:0 0 14px;color:#17392f}.variant-rates .variant-standard strong{display:block;font-size:1.3rem}.variant-rates h4{font-size:1rem;margin:0 0 12px}.rate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.rate-grid>div{padding:10px 12px;background:#f5f0e6;border-radius:10px}.rate-grid dt{font-size:.77rem;color:#52665d}.rate-grid dd{font-weight:700;margin:2px 0 0;color:#14382d}.variant-rates .rate-fee{margin:12px 0 0!important;font-size:.78rem;color:#52665d!important}@media(max-width:460px){.rate-grid{grid-template-columns:1fr}}
/* WeChat preparation page */
.wechat-page .wechat-hero{background-image:linear-gradient(90deg,rgba(5,27,22,.96),rgba(5,27,22,.74) 62%,rgba(5,27,22,.34)),url('hero-great-wall-family.jpg');background-position:center 45%}
.wechat-alert{padding:22px 0;background:#fff5dc;border-top:4px solid #aa6f21;border-bottom:1px solid #e4cca0}.wechat-alert .wrap{max-width:1120px}.wechat-alert h2{margin:0 0 8px;color:#643f12;font-size:1.35rem}.wechat-alert p{margin:0;color:#3b352a;line-height:1.6}.wechat-alert a{color:#17483b;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.wechat-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:0 0 26px}.wechat-steps li{display:flex;align-items:start;gap:18px;background:#f5f0e6;border-radius:18px;padding:25px}.wechat-steps li>span{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#18483c;color:#fff;font-weight:700}.wechat-steps h3{margin:0 0 5px}.wechat-steps p{margin:0;color:#435b50}.wechat-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.wechat-payment-grid article{background:#fffdf8;border-radius:16px;padding:22px}.wechat-payment-grid h3{margin:0 0 8px}.wechat-payment-grid p{margin:0;color:#435b50}@media(max-width:700px){.wechat-steps,.wechat-payment-grid{grid-template-columns:1fr}}

.operator-return{padding:20px 0;background:#edf3ee;border-top:1px solid var(--line)}.operator-return p{margin:0}.operator-return a{color:#0c3028;font-weight:700;text-underline-offset:3px;overflow-wrap:anywhere}

.route-map-section{background:#edf3ee}.route-map{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow)}.route-map img{display:block;width:100%;height:auto}.route-map figcaption{padding:10px 12px 6px;color:#52665d;font-size:.9rem}.route-map-section .section-head{margin-bottom:22px}

body:not(.upgrade-page) .hero-copy > .eyebrow{display:inline-block;background:#d7aa4b;color:#102d24;font-size:1rem;font-weight:800;letter-spacing:.08em;padding:10px 15px;border-radius:6px;line-height:1.4}

.luggage-section{padding:22px 0 0}.luggage-note{padding:24px;border-left:5px solid #176294;background:#edf6fc;color:#143e5c;border-radius:0 10px 10px 0}.luggage-note h2{margin:0 0 10px;font:700 22px/1.35 "DM Sans",sans-serif;color:#143e5c;letter-spacing:normal}.luggage-note p{margin:0;font-size:17px;line-height:1.7;color:#143e5c}@media(max-width:560px){.luggage-note{padding:20px}}
