/* Direct implementation of the Canva compositions, pages 3–6. */
.canva-layout{background:#f4f1ec;color:#181919;--cv-red:#c80000;font-family:'DM Sans',sans-serif}.canva-layout h1,.canva-layout h2,.canva-layout h3,.canva-layout h4,.cv-hero h1,.cv-stamp{font-family:'Barlow Condensed',sans-serif;letter-spacing:-.025em;line-height:.97;margin:0;font-weight:800}.canva-layout h2{font-size:clamp(34px,4.5vw,66px)}.canva-layout h3{font-size:clamp(22px,2.4vw,34px)}.canva-layout p{font-size:15px;line-height:1.65}.canva-layout em,.cv-hero em{color:#c80000;font-style:normal}.cv-kicker{font-size:11px!important;text-transform:uppercase;letter-spacing:.18em;font-weight:800;margin:0 0 20px;color:#c80000}.cv-hero{min-height:530px;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,rgba(10,12,13,.77),rgba(10,12,13,.05)),var(--hero) center/cover;color:white;padding:48px 5.5%}.cv-hero>div{max-width:720px;position:relative;z-index:1}.cv-hero h1{font-size:clamp(48px,6.5vw,88px);max-width:790px}.cv-hero .cv-kicker{color:white}.cv-hero p:not(.cv-kicker){max-width:570px;font-size:16px;line-height:1.5;margin:26px 0}.cv-stamp{position:absolute;bottom:24px;right:5%;font-size:clamp(28px,4vw,58px);max-width:40%;text-align:right}.cv-button{background:#c80000;display:inline-flex;align-items:center;justify-content:center;color:white;font-size:12px;font-weight:700;padding:15px 25px;text-decoration:none;white-space:nowrap}.cv-white{background:white;color:#161616}.cv-black{background:#161616;color:white}.cv-proposal{display:grid;grid-template-columns:34% 1fr;gap:8%;padding:65px 5.5% 40px}.cv-proposal>div:nth-child(2)>p:first-child{margin-top:0}.cv-proposal h2{max-width:410px}.cv-proposal h3{margin-top:42px;font-weight:600}.cv-gray{background:#e5e0d9;padding-bottom:65px}.cv-caption{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 5.5% 32px}.cv-caption h3{font-weight:600}.cv-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 5.5% 45px}.cv-gallery img{width:100%;height:210px;object-fit:cover;display:block}.cv-bike-rules{background:linear-gradient(135deg,#222629,#101213);color:white;padding:55px 5.5% 20px}.cv-bike-rules>h2{font-size:clamp(35px,4.5vw,58px)}.cv-bike-rules>h3{margin-top:26px}.cv-bike-rules>p{max-width:1050px}.cv-section-label{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:35px 0 18px}.cv-section-label h3{font-size:30px}.cv-section-label span{color:#ee4b4b;font-size:11px;letter-spacing:.2em}.cv-rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cv-rule-grid article{border:1px solid #535557;border-top:3px solid #c80000;padding:24px}.cv-line-icon{font:50px 'DM Sans';line-height:1;color:#ece9e2;height:65px}.cv-rule-grid small{color:#e7b0a9;font-size:11px;display:block;margin:10px 0}.cv-rule-grid h4{font:700 19px 'DM Sans';letter-spacing:-.02em;margin-bottom:14px}.cv-rule-grid p{font-size:13px;line-height:1.65}.cv-credit{font-size:10px!important;letter-spacing:.18em;margin-top:30px}.cv-kit{display:grid;grid-template-columns:36% 1fr;gap:6%;padding:55px 4% 30px;background:#eeeadf}.cv-kit h2{font-size:clamp(35px,4vw,55px)}.cv-kit>div>p{max-width:350px}.cv-essential{margin-top:80px;color:#a52923;font-weight:700;font-size:11px!important;letter-spacing:.1em}.cv-essential small{color:#292929;font-weight:400;letter-spacing:0}.cv-kit-row{display:grid;grid-template-columns:45px 1fr;gap:20px;border-bottom:1px solid #ccc5b7;padding:22px 0}.cv-kit-row:first-child{padding-top:0}.cv-kit-row>span{color:#c80000;font-size:14px;font-weight:700}.cv-kit-row h3{font-family:'DM Sans';font-size:19px;line-height:1.4;letter-spacing:-.02em}.cv-kit-row h3 small{font-size:9px;border-radius:20px;padding:5px 10px;background:#c80000;color:#fff;vertical-align:middle}.cv-kit-row h3 small:empty{display:none}.cv-kit-row p{font-size:13px;margin-bottom:0}.cv-bike-end{height:460px;background:linear-gradient(90deg,#090a0b55,transparent),url('/assets/canva/MAHX_LpqIO8.webp') center/cover,#090a0b;color:white;padding:60px 5.5%}.cv-bike-end h2{font-size:70px}.cv-coffee-photos{display:flex;align-items:end;gap:30px;padding:0 5.5% 50px}.cv-coffee-photos .cv-gallery{grid-template-columns:1fr 1fr;flex:1;margin:0;max-width:65%}.cv-coffee-photos .cv-gallery img{height:180px}.cv-coffee-process{padding:40px 5.5% 50px;background:#f8f6f0}.cv-process-heading{display:flex;align-items:start;justify-content:space-between;gap:40px}.cv-process-heading h2{font-size:clamp(34px,4vw,55px)}.cv-process-heading>p{max-width:230px}.cv-coffee-grid{display:grid;grid-template-columns:1fr .95fr 1fr;grid-template-rows:repeat(3,auto);column-gap:28px;row-gap:28px;margin-top:45px}.cv-coffee-step{display:flex;gap:12px}.cv-coffee-step>span{color:#c80000;font-size:12px;font-weight:700}.cv-coffee-step h3{font-family:'DM Sans';font-size:15px;line-height:1.35;letter-spacing:0}.cv-coffee-step p{font-size:12px;line-height:1.6;margin-top:9px}.step-01{grid-area:1/1}.step-02{grid-area:1/3}.step-03{grid-area:2/1}.step-04{grid-area:2/3}.step-05{grid-area:3/1}.step-06{grid-area:3/3}.cv-cup{grid-area:1/2/4/3;align-self:center;margin:0;text-align:center}.cv-cup img{width:100%;height:auto;mix-blend-mode:multiply}.cv-cup figcaption{font-size:10px;letter-spacing:.16em;color:#c80000;margin-top:26px}.cv-audience{display:grid;grid-template-columns:37% 1fr;background:#eeece2}.cv-audience-red{padding:45px 12%;color:#fff;background:#bc0000}.cv-audience-red .cv-kicker{color:white;font-size:10px!important}.cv-audience-red h2{font-size:clamp(42px,5vw,70px);margin:50px 0 30px}.cv-audience-message{font-size:clamp(24px,3vw,42px)!important;line-height:1.05!important;font-weight:700;text-shadow:2px 2px #191919;margin:30px 0 70px}.cv-dash{display:block;background:white;width:50px;height:3px}.cv-audience-list{padding:38px 6%}.cv-audience-list h3{font-size:32px}.cv-audience-list article{border-bottom:1px solid #d6d0be;padding:16px 0 10px}.cv-audience-list h4{color:#bd0000;text-transform:uppercase;letter-spacing:.1em;font:700 13px 'Barlow Condensed'}.cv-audience-list article p{font-size:12px;margin:8px 0}.cv-audience-list .cv-kicker{margin-bottom:8px}.cv-coffee-closing{padding:25px 4% 50px}.cv-coffee-closing h3{font-size:30px}.cv-cta{background:#c80000;display:flex;justify-content:space-between;align-items:center;gap:30px;color:white;padding:50px 5.5%}.cv-cta h2{font-size:clamp(35px,4.5vw,65px)}.cv-cta p{margin:10px 0 0}.cv-agenda-list{font-size:16px;line-height:2;margin:0;padding-left:25px}.canva-mountain .cv-hero{min-height:530px;background:linear-gradient(90deg,#0004,transparent),var(--hero) center/cover}.canva-mountain .mountain-feature{background:#e7e2dc}.canva-mountain .mountain-image img{height:100%;object-fit:cover}.cv-timeline-icon{display:block;width:auto;max-width:110px;height:70px;object-fit:contain;margin:25px auto 0}.canva-mountain .timeline li{border:1px solid #d8d3ca;padding:18px}.canva-mountain .timeline h3{font-size:14px;color:#c80000}.canva-mountain .timeline span{font-size:23px;font-weight:700}.canva-mountain .timeline{gap:10px}
@media(max-width:750px){.cv-hero{min-height:550px;padding:40px 6% 85px}.cv-hero h1{font-size:clamp(42px,10vw,65px)}.cv-stamp{font-size:25px;max-width:90%}.cv-proposal,.cv-kit{grid-template-columns:1fr;gap:30px;padding:40px 6%}.cv-proposal h3{margin-top:25px}.cv-caption{align-items:start;padding:10px 6% 30px}.cv-caption h3{font-size:20px}.cv-gallery{margin-left:6%;margin-right:6%;gap:8px}.cv-gallery img{height:130px}.cv-rule-grid{grid-template-columns:1fr}.cv-section-label{align-items:start;flex-direction:column}.cv-essential{margin-top:30px}.cv-bike-end{height:350px}.cv-coffee-photos{align-items:start;flex-direction:column}.cv-coffee-photos .cv-gallery{max-width:100%;width:100%}.cv-process-heading{flex-direction:column;gap:10px}.cv-coffee-grid{grid-template-columns:1fr 1fr;gap:20px}.cv-coffee-step{grid-area:auto}.cv-cup{grid-area:2/1/3/3;max-width:220px;margin:auto}.cv-audience{grid-template-columns:1fr}.cv-audience-red{padding:35px 7%}.cv-audience-red h2{margin-top:25px}.cv-audience-message{margin-bottom:35px}.cv-audience-list{padding:35px 7%}.cv-cta{align-items:start;flex-direction:column}.canva-mountain .timeline{grid-template-columns:1fr}.cv-timeline-icon{margin-left:0}.cv-coffee-closing h3{font-size:25px}}

.cv-line-icon img{width:110px;height:60px;object-fit:contain;object-position:left center;}

/* Real mountain photographs retain their complete frames and an editorial pause. */
.mountain-moments { padding:72px 8vw 90px; background:#f4f1ec; }
.mountain-moments-heading { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:40px; align-items:end; margin-bottom:40px; }
.mountain-moments-heading h2 { font-size:clamp(40px,4.5vw,64px); line-height:1; margin:0; }
.mountain-moments-heading .body-copy { margin:0; max-width:40ch; }
.mountain-photo-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:28px 36px; align-items:start; }
.mountain-photo-grid figure { margin:0; min-width:0; }
.mountain-photo-grid figure:first-child { grid-row:span 2; }
.mountain-photo-grid img { display:block; width:100%; height:auto; filter:none; }
.mountain-photo-grid figcaption { font:400 16px/1.6 'DM Sans',sans-serif; padding-top:12px; color:#504b45; }
@media(max-width:720px) { .mountain-moments { padding:56px 7vw 64px; } .mountain-moments-heading,.mountain-photo-grid { grid-template-columns:minmax(0,1fr); gap:28px; } .mountain-photo-grid figure:first-child { grid-row:auto; } }

/* Preserve the documentary frames: the source crop is the only crop. */
.cv-gallery { align-items:center; gap:24px; }
.cv-gallery img,.cv-coffee-photos .cv-gallery img { height:auto; object-fit:contain; }
.agenda-hero { background-position:center top; }
.agenda-hero em { color:#c00000; }
@media(max-width:750px) { .cv-gallery,.cv-coffee-photos .cv-gallery { grid-template-columns:minmax(0,1fr); gap:24px; } }

/* The approved documentary pair shares the same native 4:3 frame and baseline. */
.mountain-photo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.mountain-photo-grid figure:first-child { grid-row:auto; }
@media(max-width:720px) { .mountain-photo-grid { grid-template-columns:minmax(0,1fr); } }

