
:root{--bg:#f3f0ea;--paper:#ffffff;--ink:#16363a;--ink2:#23484c;--muted:#66797c;--line:#dbe4df;--teal:#1a7a73;--rust:#b7673d;--shadow:0 16px 44px rgba(18,44,47,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(100% - 40px,1160px);margin:0 auto}
.demo-ribbon{padding:10px 18px;background:#efe4ca;color:#6a5328;text-align:center;font-size:12px;font-weight:650}.demo-ribbon strong{font-weight:900}
.site-header{position:sticky;top:0;z-index:12;backdrop-filter:saturate(1.2) blur(12px);background:rgba(243,240,234,.82);border-bottom:1px solid rgba(219,228,223,.9)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;position:relative}.brand{text-decoration:none;font-weight:950;letter-spacing:-.045em;font-size:28px;color:var(--ink);display:inline-flex;gap:10px;align-items:center}.brand-mark{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,var(--teal),#78b5a9);display:inline-block;position:relative;transform:rotate(45deg)}.brand-mark:after{content:"";position:absolute;width:6px;height:6px;background:#fff;border-radius:50%;left:8px;top:8px}.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700}.nav-links a{text-decoration:none}.nav-cta{padding:11px 15px;border-radius:999px;background:var(--ink);color:#fff!important}.menu{display:none;border:0;background:none;font-size:25px;color:var(--ink)}
.hero{padding:66px 0 38px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:44px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:var(--teal)} h1{font-size:clamp(48px,7vw,83px);line-height:.96;letter-spacing:-.065em;margin:13px 0 24px;max-width:780px}.hero p.lead{font-size:20px;color:var(--ink2);max-width:650px;margin:0 0 30px}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:850;border-radius:999px;padding:13px 18px;border:1px solid var(--ink);font-size:14px}.btn.primary{background:var(--ink);color:#fff}.btn.ghost{background:transparent}.micro{margin-top:17px;color:var(--muted);font-size:12px}.hero-card{position:relative;min-height:545px;border-radius:34px;overflow:hidden;background:#133a3e;box-shadow:var(--shadow)}.hero-card .photo{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(8,34,37,.06),rgba(8,34,37,.72)),url('assets/coast.jpg');background-size:cover;background-position:center}.hero-card .stamp{position:absolute;top:22px;right:22px;background:#fff;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900;color:var(--ink)}.route-line{position:absolute;left:28px;right:28px;bottom:30px;background:rgba(255,255,255,.95);padding:18px;border-radius:22px}.route-line strong{display:block;font-size:17px}.route-dots{display:flex;align-items:center;gap:7px;margin-top:12px}.route-dots span{width:9px;height:9px;border-radius:50%;background:var(--teal)}.route-dots i{height:2px;background:#cfd9d5;flex:1}.route-meta{font-size:12px;color:var(--muted);margin-top:7px}
.trust-strip{padding:14px 0 55px}.trust-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}.trust-item{background:var(--paper);padding:18px 20px}.trust-item strong{display:block;font-size:15px}.trust-item span{font-size:12px;color:var(--muted)}
.section{padding:72px 0}.section.white{background:var(--paper)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head h2{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.05em;margin:6px 0}.section-head p{max-width:520px;color:var(--muted);margin:0}.kicker{font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:var(--teal)}
.week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.week-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 7px 25px rgba(16,47,51,.05)}.week-photo{height:220px;background-size:cover;background-position:center}.w1{background-image:url('assets/coast.jpg')}.w2{background-image:url('assets/mountains.jpg')}.w3{background-image:url('assets/harbor.jpg')}.w4{background-image:url('assets/cottage.jpg')}.week-body{padding:19px}.week-num{font-size:11px;font-weight:900;color:var(--rust);letter-spacing:.12em}.week-body h3{font-size:24px;line-height:1.05;margin:7px 0 8px;letter-spacing:-.03em}.week-body p{font-size:13px;color:var(--muted);margin:0 0 14px}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag{font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:#edf4f1;color:#35615f}
.gallery-section{background:#eef2ef}.scenic-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px}.scenic{min-height:250px;border-radius:28px;background-size:cover;background-position:center;overflow:hidden;box-shadow:var(--shadow);position:relative}.scenic-lg{min-height:390px}.scenic:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,31,34,.02),rgba(12,31,34,.68))}.scenic span{position:absolute;left:22px;right:22px;bottom:20px;color:#fff;font-size:24px;font-weight:850;letter-spacing:-.03em;z-index:1}
.how{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}.how h2{font-size:clamp(38px,5vw,60px);letter-spacing:-.05em;line-height:1.01;margin:8px 0 16px}.steps{display:grid;gap:12px}.step{display:grid;grid-template-columns:44px 1fr;gap:15px;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--line)}.step b{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--teal);color:#fff}.step h3{margin:1px 0 4px}.step p{margin:0;color:var(--muted);font-size:13px}
.route-cta{background:var(--ink);color:#fff;border-radius:34px;padding:42px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.route-cta h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.05em;line-height:1;margin:0 0 12px}.route-cta p{color:#bdd0ce;max-width:680px;margin:0}.route-cta .btn{border-color:#fff;background:#fff;color:var(--ink)}
.footer{padding:38px 0 48px}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start;border-top:1px solid var(--line);padding-top:27px}.footer p,.footer a{font-size:12px;color:var(--muted)}.footer-links{display:flex;gap:18px}.footer-links a{text-decoration:none}
.page-hero{padding:64px 0 38px}.page-hero h1{font-size:clamp(50px,7vw,78px);max-width:900px}.route-hero-photo{position:relative}.route-hero-photo:before{content:"";position:absolute;left:0;right:0;bottom:0;top:0;background:linear-gradient(180deg,rgba(243,240,234,.84),rgba(243,240,234,.96)),url('assets/coast.jpg');background-size:cover;background-position:center;z-index:-1}.route-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:30px}.route-summary div{padding:16px;border-radius:18px;background:#fff;border:1px solid var(--line)}.route-summary span{display:block;font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.route-summary strong{font-size:18px}.route-stop{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.route-stop:nth-child(even){grid-template-columns:1.1fr .9fr}.route-stop:nth-child(even) .stop-photo{order:2}.stop-photo{height:390px;border-radius:28px;background-size:cover;background-position:center;box-shadow:var(--shadow)}.stop-copy .num{font-size:11px;font-weight:900;color:var(--rust);letter-spacing:.13em}.stop-copy h2{font-size:42px;letter-spacing:-.045em;line-height:1.03;margin:7px 0 12px}.stop-copy p{color:var(--muted)}.highlight-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.highlight-list span{background:#fff;border:1px solid var(--line);border-radius:13px;padding:10px 12px;font-size:12px;font-weight:750}.partner-stay{margin-top:18px;padding:15px;border-radius:16px;background:#e9f3ef}.partner-stay b{display:block}.partner-stay small{color:var(--muted)}.route-benefits{margin-top:10px}
.form-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{display:block;font-size:11px;font-weight:850;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cfdad5;border-radius:12px;font:inherit;background:#fff}.field.full{grid-column:1/-1}.form-note{font-size:11px;color:var(--muted)}
@media(max-width:900px){.hero-grid,.how{grid-template-columns:1fr}.hero-card{min-height:460px}.week-grid{grid-template-columns:1fr 1fr}.scenic-grid{grid-template-columns:1fr 1fr}.scenic-lg{grid-column:1/-1;min-height:320px}.route-stop,.route-stop:nth-child(even){grid-template-columns:1fr}.route-stop:nth-child(even) .stop-photo{order:0}.route-cta{grid-template-columns:1fr}.route-summary{grid-template-columns:1fr 1fr}.nav-links{display:none}.menu{display:block}.nav-links.open{display:flex;position:absolute;left:18px;right:18px;top:70px;flex-direction:column;align-items:stretch;background:#fff;padding:18px;border-radius:20px;box-shadow:var(--shadow)}}
@media(max-width:620px){.wrap{width:min(100% - 24px,1160px)}.hero{padding-top:42px}.hero-card{min-height:410px}.week-grid,.scenic-grid{grid-template-columns:1fr}.week-photo{height:240px}.trust-inner{grid-template-columns:1fr}.section{padding:52px 0}.section-head{display:block}.route-summary{grid-template-columns:1fr 1fr}.stop-photo{height:290px}.highlight-list{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{display:block}.footer-links{margin-top:15px}.route-cta{padding:28px}.scenic-lg,.scenic{min-height:240px}}

/* Wales Your Way brand refinement */
.brand{letter-spacing:-.04em}.brand::after{content:"your way";font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-weight:900;margin-left:-4px;margin-top:13px}.hero .eyebrow{color:var(--rust)}
