.about-page-width{width:min(1240px,calc(100% - 40px))}
.about-hero{padding:30px 0 40px;background:#fff}
.about-breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:24px;color:#777;font-size:12px}
.about-breadcrumbs a{display:inline-flex;align-items:center;gap:6px;color:var(--brand-primary);font-weight:800}
.about-breadcrumbs i{font-size:11px}

/* Five-image editorial hero. No gradients: brand colours come from backend CSS variables. */
.about-hero-gallery{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:18px;align-items:stretch}
.about-hero-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,auto);gap:18px;min-width:0;align-self:start}
.about-hero-support-photo,.about-hero-main-photo{position:relative;margin:0;overflow:hidden;border-radius:18px;background:#fff;border:1px solid #ececec}
.about-hero-support-photo{aspect-ratio:4/3}
.about-hero-support-photo img{display:block;width:100%;height:100%;object-fit:cover}
.about-hero-main-photo{min-width:0;min-height:0;height:auto;align-self:stretch}
.about-hero-main-photo>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-photo-placeholder{display:flex;width:100%;height:100%;min-height:150px;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;background:#fff;border:1px dashed var(--brand-secondary);color:var(--brand-primary);text-align:center}
.about-photo-placeholder i{font-size:28px;color:var(--brand-secondary)}
.about-photo-placeholder small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.about-photo-placeholder-main{position:absolute;inset:0;min-height:0}
.about-photo-placeholder-main>img{width:min(190px,45%);height:auto;object-fit:contain}

.about-intro-section{padding:54px 0 72px;background:#fff;border-bottom:1px solid #ededed}
.about-intro-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(34px,7vw,96px);align-items:end}
.about-kicker,.about-section-kicker,.about-cta-kicker{display:block;color:var(--brand-secondary);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.about-kicker{margin-bottom:12px}
.about-intro-title h1{margin:0;color:var(--brand-primary);font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:clamp(48px,6vw,78px);line-height:.98;letter-spacing:-.035em}
.about-intro-copy>p{max-width:760px;margin:0;color:#666;font-size:17px;line-height:1.85}
.about-primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;margin-top:25px;padding:0 24px;border:1px solid var(--brand-secondary);border-radius:6px;background:var(--brand-secondary);color:#fff!important;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.045em;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.about-primary-btn:hover{background:var(--brand-primary);border-color:var(--brand-primary);transform:translateY(-1px)}

.about-section{padding:88px 0}
.about-section h2{font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);letter-spacing:-.025em}
.about-section-kicker{margin-bottom:15px}
.about-heading-rule{display:block;width:64px;height:3px;margin-top:28px;background:var(--brand-secondary)}
.about-editorial-heading h2,.about-wide-heading h2,.about-network-heading h2{margin:0;color:var(--brand-primary);font-size:clamp(36px,4.4vw,58px);line-height:1.05}
.about-richtext{color:#626262;font-size:15px;line-height:1.85}
.about-richtext p{margin:0 0 17px}
.about-richtext p:last-child{margin-bottom:0}
.about-richtext strong{color:var(--brand-primary)}
.about-richtext a{color:var(--brand-secondary);font-weight:850;text-decoration:none}
.about-richtext a:hover{color:var(--brand-primary)}
.about-richtext h3{margin:28px 0 10px;color:var(--brand-primary);font-size:18px}
.about-richtext ul,.about-richtext ol{margin:20px 0 0;padding:0;list-style:none}
.about-richtext li{position:relative;margin:0;padding:11px 0 11px 29px;border-bottom:1px solid #e8e8e8}
.about-richtext li:last-child{border-bottom:0}
.about-richtext li::before{content:"\F26A";position:absolute;left:0;top:12px;color:var(--brand-secondary);font-family:"bootstrap-icons";font-size:15px}
.about-richtext img{display:block;max-width:100%;height:auto;margin:24px 0;border-radius:12px}

.about-section-story{background:#fff}
.about-story-layout{display:grid;grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);gap:clamp(42px,8vw,120px);align-items:start}
.about-editorial-heading{position:relative;padding-top:5px}
.about-story-body{max-width:820px}
.about-story-body blockquote{position:relative;margin:0 0 34px;padding:0 0 0 28px;border-left:3px solid var(--brand-secondary);color:var(--brand-primary);font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:clamp(25px,3vw,39px);font-style:normal;line-height:1.4}
.about-story-body>p:first-of-type{margin-bottom:32px}
.about-story-body h3{margin-top:36px;font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:24px}
.about-story-body ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px}

.about-section-services{background:#fff;border-top:1px solid #ededed}
.about-wide-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;max-width:930px;margin-bottom:45px}
.about-section-intro{max-width:850px;margin:-15px 0 34px}
.about-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dedede;border-bottom:1px solid #dedede}
.about-service-item{position:relative;padding:34px clamp(22px,3vw,42px) 38px 0}
.about-service-item+.about-service-item{padding-left:clamp(22px,3vw,42px);border-left:1px solid #dedede}
.about-service-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}
.about-service-number{color:var(--brand-secondary);font-size:12px;font-weight:900;letter-spacing:.12em}
.about-service-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--brand-secondary);border-radius:50%;color:var(--brand-secondary);font-size:17px}
.about-service-item h3{margin:0 0 13px;color:var(--brand-primary);font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:clamp(23px,2.3vw,31px);line-height:1.2}
.about-service-item .about-richtext{font-size:14px;line-height:1.8}

.about-section-network{background:var(--brand-primary);color:#fff}
.about-network-layout{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:clamp(42px,8vw,120px);align-items:start}
.about-network-heading h2{color:#fff}
.about-network-symbol{display:grid;place-items:center;width:70px;height:70px;margin-top:34px;border:1px solid var(--brand-secondary);border-radius:50%;color:var(--brand-secondary);font-size:29px}
.about-network-content{color:#fff}
.about-network-content strong,.about-network-content h3{color:#fff}
.about-network-content>p:first-child{font-size:18px;line-height:1.8}
.about-network-content ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px;margin-top:28px}
.about-network-content li{border-color:rgba(255,255,255,.22);color:#fff}
.about-network-content li::before{color:var(--brand-secondary)}

.about-section-trust{background:#fff}
.about-trust-layout{display:grid;grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);gap:clamp(42px,8vw,120px);align-items:start}
.about-trust-list{border-top:2px solid var(--brand-secondary)}
.about-trust-item{display:grid;grid-template-columns:74px minmax(0,1fr);gap:24px;padding:30px 0;border-bottom:1px solid #dedede}
.about-trust-number{padding-top:2px;color:var(--brand-secondary);font-size:12px;font-weight:900;letter-spacing:.12em}
.about-trust-item h3{margin:0 0 9px;color:var(--brand-primary);font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:clamp(23px,2.2vw,30px);line-height:1.2}
.about-trust-item .about-richtext{font-size:14px}

.about-section-cta{padding:28px 0 84px;background:#fff}
.about-cta-band{display:grid;grid-template-columns:84px minmax(0,1fr);gap:32px;align-items:start;padding:clamp(34px,5vw,62px);border-radius:18px;background:var(--brand-secondary);color:#fff}
.about-cta-icon{display:grid;place-items:center;width:70px;height:70px;border:1px solid #fff;border-radius:50%;color:#fff;font-size:29px}
.about-cta-kicker{margin-bottom:13px;color:#fff}
.about-cta-copy h2{max-width:820px;margin:0 0 15px;color:#fff;font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);font-size:clamp(34px,4.2vw,54px);line-height:1.08}
.about-cta-copy .about-richtext{color:#fff;font-size:16px}
.about-cta-copy .about-richtext p{max-width:880px}
.about-cta-copy .about-richtext strong{color:#fff}
.about-cta-copy .about-richtext a{display:inline-flex;align-items:center;justify-content:center;min-height:49px;margin-top:12px;padding:0 24px;border:1px solid var(--brand-primary);border-radius:6px;background:var(--brand-primary);color:#fff!important;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.about-cta-copy .about-richtext a:hover{background:#fff;border-color:#fff;color:var(--brand-primary)!important}

.about-section-default{background:#fff;border-top:1px solid #ededed}

@media(max-width:1000px){
  .about-page-width{width:min(100% - 32px,1240px)}
  .about-hero-gallery{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:14px}
  .about-hero-support-grid{gap:14px}
  .about-hero-support-photo,.about-hero-main-photo{border-radius:15px}
  .about-intro-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px}
  .about-section{padding:70px 0}
  .about-story-layout,.about-network-layout,.about-trust-layout{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:48px}
  .about-story-body ul{grid-template-columns:1fr}
  .about-service-grid{grid-template-columns:1fr}
  .about-service-item,.about-service-item+.about-service-item{padding:27px 0;border-left:0;border-bottom:1px solid #dedede}
  .about-service-item:last-child{border-bottom:0}
  .about-service-topline{margin-bottom:18px}
  .about-network-content ul{grid-template-columns:1fr}
}

@media(max-width:780px){
  .about-page-width{width:min(100% - 28px,1240px)}
  .about-hero{padding:22px 0 28px}
  .about-breadcrumbs{margin-bottom:18px}
  .about-hero-gallery{display:flex;flex-direction:column;gap:14px}
  .about-hero-main-photo{order:-1;width:min(100%,520px);height:auto;aspect-ratio:4/5;margin-inline:auto;align-self:auto}
  .about-hero-support-grid{width:100%;gap:12px}
  .about-hero-support-photo{border-radius:13px}
  .about-photo-placeholder-main{min-height:0}
  .about-intro-section{padding:40px 0 54px}
  .about-intro-grid{grid-template-columns:1fr;gap:20px}
  .about-intro-title h1{font-size:48px}
  .about-intro-copy>p{font-size:16px}
  .about-section{padding:56px 0}
  .about-story-layout,.about-network-layout,.about-trust-layout{grid-template-columns:1fr;gap:32px}
  .about-heading-rule{margin-top:20px}
  .about-story-body blockquote{font-size:28px}
  .about-wide-heading{margin-bottom:30px}
  .about-network-symbol{width:58px;height:58px;margin-top:24px;font-size:24px}
  .about-trust-list{margin-top:2px}
  .about-cta-band{grid-template-columns:1fr;gap:22px;padding:34px 28px}
  .about-cta-icon{width:58px;height:58px;font-size:24px}
}

@media(max-width:520px){
  .about-page-width{width:min(100% - 22px,1240px)}
  .about-hero-support-grid{gap:8px}
  .about-hero-support-photo{border-radius:9px}
  .about-hero-main-photo{border-radius:12px}
  .about-photo-placeholder{min-height:110px;padding:12px}
  .about-photo-placeholder i{font-size:22px}
  .about-photo-placeholder small{font-size:9px}
  .about-intro-title h1{font-size:40px}
  .about-intro-copy>p{font-size:15px;line-height:1.75}
  .about-primary-btn{width:100%}
  .about-editorial-heading h2,.about-wide-heading h2,.about-network-heading h2{font-size:36px}
  .about-story-body blockquote{padding-left:20px;font-size:25px}
  .about-service-item h3,.about-trust-item h3{font-size:24px}
  .about-trust-item{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:24px 0}
  .about-network-content>p:first-child{font-size:16px}
  .about-cta-band{padding:30px 22px;border-radius:14px}
  .about-cta-copy h2{font-size:34px}
  .about-cta-copy .about-richtext a{width:100%}
}


/* ============================================================
   Greatlink Safaris — About page balance refinement
   - no gradients
   - brand accents only use backend primary/secondary variables
   - removes unused editorial-column space
   - reduces mobile hero portrait height
   ============================================================ */

/* Make editorial sections use their width instead of reserving empty left columns. */
.about-story-layout,
.about-network-layout,
.about-trust-layout{
  display:block;
}

.about-editorial-heading,
.about-network-heading,
.about-trust-heading{
  max-width:900px;
  margin-bottom:36px;
}

.about-editorial-heading h2,
.about-network-heading h2{
  max-width:760px;
}

.about-story-body{
  max-width:100%;
}

.about-story-body blockquote{
  max-width:980px;
}

.about-story-body>p,
.about-story-body>h3{
  max-width:980px;
}

.about-story-body ul{
  max-width:1080px;
}

/* Network: heading first, then useful content across the section. */
.about-network-heading{
  position:relative;
  padding-right:96px;
}

.about-network-symbol{
  position:absolute;
  top:0;
  right:0;
  margin:0;
}

.about-network-content{
  max-width:1120px;
}

.about-network-content>p:first-child{
  max-width:980px;
}

.about-network-content ul{
  max-width:1120px;
}

/* Trusted Quality: use the empty width for the actual quality points. */
.about-trust-heading{
  margin-bottom:30px;
}

.about-trust-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:2px solid var(--brand-secondary);
  border-bottom:1px solid #dedede;
}

.about-trust-item{
  display:block;
  min-width:0;
  padding:30px clamp(20px,2.8vw,38px) 34px;
  border-bottom:0;
}

.about-trust-item:first-child{
  padding-left:0;
}

.about-trust-item:last-child{
  padding-right:0;
}

.about-trust-item + .about-trust-item{
  border-left:1px solid #dedede;
}

.about-trust-number{
  display:block;
  margin-bottom:22px;
}

.about-trust-item .about-richtext{
  max-width:360px;
}

/* Slightly tighter vertical rhythm now that content spans the available width. */
.about-section{
  padding:74px 0;
}

.about-section-network{
  padding-top:72px;
  padding-bottom:72px;
}

.about-section-trust{
  padding-top:72px;
  padding-bottom:72px;
}

/* Tablet: keep the editorial flow stacked before empty columns can appear. */
@media(max-width:1100px){
  .about-editorial-heading,
  .about-network-heading,
  .about-trust-heading{
    max-width:none;
    margin-bottom:30px;
  }

  .about-story-body blockquote,
  .about-story-body>p,
  .about-story-body>h3,
  .about-network-content,
  .about-network-content>p:first-child{
    max-width:none;
  }

  .about-network-heading{
    padding-right:80px;
  }

  .about-trust-list{
    grid-template-columns:1fr;
  }

  .about-trust-item,
  .about-trust-item:first-child,
  .about-trust-item:last-child{
    padding:25px 0;
  }

  .about-trust-item + .about-trust-item{
    border-left:0;
    border-top:1px solid #dedede;
  }

  .about-trust-number{
    margin-bottom:10px;
  }

  .about-trust-item .about-richtext{
    max-width:none;
  }
}

/* Mobile/tablet hero: crop the 4:5 source into a shorter responsive display frame. */
@media(max-width:780px){
  .about-hero-main-photo{
    width:100%;
    max-width:none;
    height:clamp(340px,72vw,470px);
    aspect-ratio:auto;
  }

  .about-hero-main-photo>img{
    object-position:center 38%;
  }

  .about-section{
    padding:52px 0;
  }

  .about-editorial-heading,
  .about-network-heading,
  .about-trust-heading{
    margin-bottom:26px;
  }

  .about-network-heading{
    padding-right:0;
  }

  .about-network-symbol{
    position:static;
    margin-top:22px;
  }

  .about-story-body ul,
  .about-network-content ul{
    grid-template-columns:1fr;
  }
}

@media(max-width:520px){
  .about-hero{
    padding-top:18px;
    padding-bottom:22px;
  }

  .about-hero-main-photo{
    height:clamp(315px,76vw,390px);
  }

  .about-hero-gallery{
    gap:10px;
  }

  .about-hero-support-grid{
    gap:8px;
  }

  .about-section{
    padding:46px 0;
  }

  .about-section-network,
  .about-section-trust{
    padding-top:46px;
    padding-bottom:46px;
  }
}

/* ============================================================
   Greatlink Safaris — wide desktop editorial rebalance
   Uses available width without dead zones. No gradients.
   ============================================================ */

@media(min-width:1101px){
  /* WHY TRAVEL WITH US
     Heading spans the section; story and checklist sit side-by-side. */
  .about-story-layout{
    display:block;
  }

  .about-story-layout .about-editorial-heading{
    max-width:none;
    margin-bottom:38px;
  }

  .about-story-layout .about-editorial-heading h2{
    max-width:none;
  }

  .about-story-body{
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    grid-template-rows:auto auto auto;
    column-gap:clamp(52px,5vw,86px);
    row-gap:0;
    max-width:none;
    align-items:start;
  }

  .about-story-body blockquote{
    grid-column:1;
    grid-row:1;
    max-width:none;
    margin:0 0 30px;
  }

  .about-story-body>p{
    grid-column:1;
    max-width:none;
  }

  .about-story-body>p:first-of-type{
    grid-row:2;
    margin-bottom:4px;
  }

  .about-story-body>p:nth-of-type(2){
    grid-row:3;
    margin-bottom:0;
  }

  .about-story-body>h3{
    grid-column:2;
    grid-row:1;
    margin:3px 0 18px;
    padding-bottom:16px;
    border-bottom:2px solid var(--brand-secondary);
  }

  .about-story-body>ul,
  .about-story-body>ol{
    grid-column:2;
    grid-row:2 / span 3;
    display:block;
    max-width:none;
    margin:0;
  }

  .about-story-body>ul li,
  .about-story-body>ol li{
    padding-top:14px;
    padding-bottom:14px;
  }

  /* OUR NETWORK FOR YOU
     Purposeful split: identity on left, useful network details on right. */
  .about-network-layout{
    display:grid;
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
    gap:clamp(56px,6vw,96px);
    align-items:start;
  }

  .about-network-heading{
    position:relative;
    max-width:none;
    margin:0;
    padding:0;
  }

  .about-network-heading h2{
    max-width:520px;
  }

  .about-network-symbol{
    position:static;
    width:72px;
    height:72px;
    margin-top:32px;
  }

  .about-network-content{
    max-width:none;
  }

  .about-network-content>p:first-child{
    max-width:none;
    margin-top:0;
  }

  .about-network-content ul{
    max-width:none;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:36px;
  }

  .about-section-network{
    padding-top:70px;
    padding-bottom:70px;
  }
}

/* Medium desktop: retain the split but tighten it before tablet stacking. */
@media(min-width:1101px) and (max-width:1320px){
  .about-story-body{
    grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
    column-gap:44px;
  }

  .about-network-layout{
    grid-template-columns:minmax(270px,.68fr) minmax(0,1.32fr);
    gap:48px;
  }
}


/* ============================================================
   Greatlink Safaris — Why Travel With Us final flow
   Removes unequal-column dead space. No gradients.
   ============================================================ */
.about-section-story .about-story-layout{
  display:block;
}

.about-section-story .about-story-heading{
  max-width:none;
  margin:0 0 38px;
}

.about-story-lead{
  max-width:1120px;
}

.about-story-lead blockquote{
  position:relative;
  max-width:1080px;
  margin:0 0 28px;
  padding:0 0 0 28px;
  border-left:3px solid var(--brand-secondary);
  color:var(--brand-primary);
  font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);
  font-size:clamp(28px,3vw,42px);
  font-style:normal;
  line-height:1.36;
}

.about-story-lead>p{
  max-width:760px;
  margin-bottom:4px;
}

.about-story-lead>p:first-of-type{
  margin-top:0;
  font-weight:800;
  color:var(--brand-primary);
}

.about-story-expect{
  margin-top:46px;
  padding-top:30px;
  border-top:1px solid #dedede;
}

.about-story-expect>h3{
  margin:0 0 20px;
  padding-bottom:16px;
  border-bottom:2px solid var(--brand-secondary);
  color:var(--brand-primary);
  font-family:var(--front-heading-font,"Playfair Display",Georgia,serif);
  font-size:clamp(24px,2.2vw,31px);
  line-height:1.2;
}

.about-story-expect-content{
  max-width:none;
}

.about-story-expect-content>ul,
.about-story-expect-content>ol{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0 34px;
  max-width:none;
  margin:0;
}

.about-story-expect-content li{
  min-width:0;
  padding:15px 0 15px 28px;
  border-bottom:1px solid #e3e3e3;
}

/* Override earlier wide-desktop story grid rules. */
@media(min-width:1101px){
  .about-section-story .about-story-layout{
    display:block;
  }
}

@media(max-width:1100px){
  .about-section-story .about-story-heading{
    margin-bottom:30px;
  }

  .about-story-expect-content>ul,
  .about-story-expect-content>ol{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 26px;
  }
}

@media(max-width:700px){
  .about-story-lead blockquote{
    padding-left:20px;
    font-size:clamp(25px,7vw,31px);
  }

  .about-story-expect{
    margin-top:34px;
    padding-top:24px;
  }

  .about-story-expect-content>ul,
  .about-story-expect-content>ol{
    grid-template-columns:1fr;
  }
}
