/* Carrier Family Crafts — shared layout and typography. */
:root{--paper:#eadbc2;--charcoal:#333333;--brick:#a94f3c;--ink:var(--charcoal);--muted:#5b5350;--rust:var(--brick);--whatsapp:#25d366;--line:#b7a080;--heading:'Trebuchet MS','Segoe UI',Arial,sans-serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);background:linear-gradient(#ddc9acd9,#ddc9acd9),url('assets/mud-cloth-texture.png') repeat;background-size:auto,740px;font:17px/1.8 var(--body)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}img{display:block;max-width:100%}a:focus-visible,button:focus-visible{outline:3px solid var(--rust);outline-offset:5px}p{margin:0 0 20px}h1,h2,h3{font-family:var(--heading);font-weight:500;line-height:1.15;margin:0 0 20px;letter-spacing:-.8px}h1{font-size:clamp(40px,4.4vw,66px)}h2{font-size:clamp(30px,3vw,44px)}h3{font-size:25px}em{font-style:normal;color:var(--rust)}.eyebrow{text-transform:uppercase;color:var(--rust);font-size:11px;letter-spacing:1.7px;font-weight:600;margin-bottom:16px}.read-link,.quiet-links a,.breadcrumb,.next-links a{font-size:14px;font-weight:600;border-bottom:1px solid #9d8163;padding-bottom:4px}.read-link:hover,.quiet-links a:hover{color:var(--rust)}.small-note,figcaption{font-size:12px;line-height:1.65;color:var(--muted)}figure{margin:0}figcaption{margin-top:8px}.skip-link{position:fixed;z-index:100;top:0;left:0;transform:translateY(-150%);background:var(--paper);padding:12px}.skip-link:focus{transform:none}.preview{text-align:center;background:var(--charcoal);color:#efdfc5;font-size:10px;letter-spacing:1px;padding:5px 15px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px clamp(20px,4vw,70px);position:sticky;top:0;z-index:20;background:#e7d7bff5;border-bottom:1px solid var(--line);box-shadow:0 3px 15px #48351c12}.brand{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--heading)}.brand img{width:48px;height:48px;flex:none}.brand-name{font-size:clamp(19px,1.65vw,27px);line-height:1.2}.brand-family{font:400 clamp(15px,1.25vw,20px)/1.2 Georgia,serif;color:var(--brick)}.brand-family::before{content:'•';color:var(--rust);margin-right:10px}.site-header nav{display:flex;gap:20px;margin-left:auto}.site-header nav a{font-size:15px;font-weight:600;white-space:nowrap;padding:10px 0}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.business-contact{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#143b26;background:var(--whatsapp);border-radius:12px;padding:10px 13px;font-size:13px;font-weight:600;white-space:nowrap}.whatsapp-icon{height:21px;width:21px;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;background:var(--charcoal);color:#fff3df;border:1px solid var(--charcoal);padding:12px 21px;border-radius:26px;font-size:14px;font-weight:600;line-height:1.5}.button.secondary{background:#eee2ccb3;color:var(--ink);border-color:#ac9470}.button:hover{background:var(--rust);border-color:var(--rust);color:white}.actions,.quiet-links,.next-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}.quiet-links{gap:14px 24px}.next-links{justify-content:space-between}.link-arrow{width:18px;height:18px;vertical-align:middle}.arrow-up{transform:rotate(-90deg)}
main{max-width:1520px;padding:0 clamp(20px,5vw,80px);margin:auto}section{padding:65px 0}.home-hero,.product-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);align-items:center;gap:clamp(30px,5vw,85px);padding:55px 0 75px}.hero-copy>p{max-width:47ch}.family-portrait img{width:100%;height:auto;border:12px solid var(--charcoal);border-radius:76px 18px 18px 18px;box-shadow:0 14px 30px #33333338}.home-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.home-story p{max-width:55ch}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:30px}.section-heading h2{margin-bottom:0}.craft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:25px 0}.craft-card{display:flex;flex-direction:column;background:#eee2cd;border:1px solid #baa17e;border-radius:20px;overflow:hidden;min-width:0;transition:box-shadow .2s,transform .2s}.craft-card:hover{box-shadow:0 10px 24px #4d382520;transform:translateY(-3px)}.card-photo{aspect-ratio:4/3;position:relative;background:var(--charcoal);border:7px solid var(--charcoal);overflow:hidden}.card-photo img{position:absolute;width:100%;height:100%;object-fit:contain}.card-copy{padding:21px}.card-copy h2,.card-copy h3{font-size:25px;margin-bottom:12px}.card-copy p:not(.eyebrow){font-size:15px;line-height:1.7}.card-copy .eyebrow{font-size:10px;margin-bottom:9px}.photo-note{position:absolute;bottom:8px;left:8px;background:#f1e7d6ed;padding:3px 8px;border-radius:6px;font-size:11px}.process-feature{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.process-feature img{width:100%;height:auto;border:8px solid var(--charcoal);border-radius:32px 16px 16px 16px}.thanks{text-align:center;max-width:780px;margin:auto;padding:65px 0 85px}.thanks p{max-width:58ch;margin:0 auto 24px}.page-intro{padding:65px 0 24px}.page-intro>p{max-width:62ch}.breadcrumb{display:inline-block;margin-bottom:24px}.catalog{padding-top:0}.reading{max-width:760px;margin:auto}.reading p{margin-bottom:24px}.social-grid,.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.panel{border:1px solid #baa17e;background:#eee2cd;padding:25px;border-radius:20px}.panel h2{font-size:25px}.social-link{display:flex;justify-content:space-between;align-items:center;min-height:52px;border-bottom:1px solid var(--line);font-weight:600}.social-link:hover{color:var(--rust)}.video-photo{aspect-ratio:16/9;position:relative;overflow:hidden}.video-photo img{position:absolute;width:100%;height:100%;object-fit:cover}.product-intro{grid-template-columns:1fr 1fr}.product-intro h1{font-size:clamp(36px,3.6vw,54px)}.product-portrait img{width:100%;height:auto;max-height:560px;object-fit:contain;border:8px solid var(--charcoal);border-radius:20px}.product-intro .small-note{margin-top:14px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.enlarge{display:block;width:100%;aspect-ratio:4/3;position:relative;padding:0;border:7px solid var(--charcoal);border-radius:15px;overflow:hidden;background:#eee3d0}.enlarge img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.gallery figcaption{max-width:45ch}.details-band{display:grid;grid-template-columns:1fr 1fr;gap:7%;border-top:1px solid var(--line)}.details-band ul{padding-left:20px}.details-band li{margin:10px 0}.contact-grid{grid-template-columns:1fr 1fr}.narrow{max-width:760px}.gallery-section{padding-top:30px}footer{padding:35px clamp(20px,5vw,80px);background:#bca88699;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:13px}footer>a{font-weight:600}footer span{font-weight:400}footer nav{display:flex;gap:16px;flex-wrap:wrap}footer p{margin:0}dialog{max-width:1100px;width:94vw;max-height:94vh;border:0;border-radius:18px;background:#eadbc2;padding:18px}dialog::backdrop{background:#241c16c9}dialog img{width:100%;height:auto;max-height:77vh;object-fit:contain}.close-gallery{display:block;margin:0 0 10px auto;padding:6px 15px;background:var(--charcoal);color:white;border:0;border-radius:18px}
@media(max-width:1100px){.site-header{flex-wrap:wrap}.site-header .brand{flex:1}.site-header nav{order:3;width:100%;justify-content:center;margin:0;gap:35px}.brand-name{font-size:23px}.brand-family{font-size:18px}.home-hero{gap:30px}.craft-grid{gap:18px}.card-copy{padding:17px}}
@media(max-width:740px){html{scroll-padding-top:15px}body{font-size:15px;background-size:auto,540px}.site-header{position:static;padding:10px 16px;gap:9px}.brand{display:grid;grid-template-columns:auto 1fr;gap:2px 8px}.brand img{grid-row:span 2;width:40px;height:40px}.brand-name{font-size:20px}.brand-family{grid-column:2;font-size:16px}.brand-family::before{content:none}.business-contact{padding:9px;font-size:12px;min-height:44px}.business-contact>span{max-width:90px;white-space:normal}.site-header nav{justify-content:space-between;gap:15px}.site-header nav a{padding:6px 0;font-size:14px;min-height:40px}h1{font-size:clamp(40px,11vw,56px)}h2{font-size:33px}section{padding:38px 0}.home-hero,.product-intro,.home-story,.process-feature,.details-band{grid-template-columns:1fr;gap:25px}.home-hero{padding:32px 0 45px}.family-portrait img{border-width:8px;border-radius:48px 14px 14px 14px}.home-story{padding:35px 0}.home-story h2{margin-bottom:0}.hero-copy>p{margin-bottom:16px}.actions{margin-top:18px}.quiet-links{margin-top:18px;font-size:13px}.craft-grid{grid-template-columns:1fr;gap:20px}.card-photo{aspect-ratio:4/3}.card-copy{padding:18px}.card-copy h2,.card-copy h3{font-size:25px}.thanks{padding:42px 0 55px}.page-intro{padding-top:35px}.social-grid,.contact-grid{grid-template-columns:1fr;gap:18px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gallery figcaption{font-size:11px}.product-intro{padding-top:30px}.product-intro figure{grid-row:2}.section-heading{gap:16px}.process-feature{padding:30px 0}.next-links{gap:20px}footer{align-items:flex-start;flex-direction:column;padding:30px 20px}.button{white-space:normal}.preview{font-size:9px}.gallery-section{padding-top:20px}}
@media(max-width:380px){.site-header .brand{width:100%;flex:auto}.site-header .business-contact{width:100%;order:3}.site-header .business-contact>span{max-width:none}.site-header nav{order:2}.gallery{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.craft-card:hover{transform:none}}

.business-contact:hover,.business-contact:focus-visible{background:#1fbd5b;color:#102e1e}.button.secondary{border-color:var(--brick)}.craft-card:hover{border-color:var(--brick)}

/* Outlined actions and a family photograph that blends into the welcome. */
.button,
.read-link,
.quiet-links a,
.breadcrumb,
.next-links a,
.site-header nav a,
footer nav a,
.small-note a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  padding:11px 17px;
  border:1px solid var(--charcoal);
  border-radius:7px;
  font:600 14px/1.4 var(--body);
  text-decoration:none;
  background:transparent;
  color:var(--charcoal);
  text-align:center;
}
.button {background:var(--charcoal);color:#fff3df}
.button.secondary {background:transparent;color:var(--charcoal);border-color:var(--charcoal)}
.button:hover,.read-link:hover,.quiet-links a:hover,.breadcrumb:hover,.next-links a:hover,.site-header nav a:hover,footer nav a:hover,.small-note a:hover {background:var(--brick);border-color:var(--brick);color:#fff3df;text-decoration:none}
.site-header nav {gap:10px}
.site-header nav a {padding:9px 13px;white-space:nowrap}
.business-contact {border:1px solid #168a45;border-radius:7px}
.quiet-links {gap:10px}
.card-copy .read-link {margin-top:4px}
.social-link {border:1px solid var(--charcoal);border-radius:7px;padding:9px 14px;margin-top:12px}
.social-link:hover {background:var(--charcoal);color:#fff3df}
.craft-facts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:22px 0;margin:12px 0 25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.craft-facts p {margin:0}
.craft-facts strong {display:block;font-family:var(--heading);font-size:19px;font-weight:500}
.craft-facts span {display:block;color:var(--muted);font-size:13px;margin-top:4px}
footer nav {gap:8px}
.home-hero {position:relative;isolation:isolate;overflow:hidden;gap:25px;padding-top:38px;padding-bottom:55px}
.home-hero .hero-copy {position:relative;z-index:1}
.home-hero .family-portrait {width:125%;max-width:none;margin-left:-25%;align-self:center}
.home-hero .family-portrait img {width:100%;height:auto;border:0;border-radius:0;box-shadow:none;-webkit-mask-image:linear-gradient(to right,transparent,black 30%);mask-image:linear-gradient(to right,transparent,black 30%)}
.home-hero .family-portrait figcaption {text-align:right;padding-right:10px}
@media(max-width:1100px){.site-header nav {gap:10px}}
@media(max-width:740px){
 .home-hero {padding-top:30px;padding-bottom:35px;gap:20px}
 .home-hero .family-portrait {width:100%;margin:0}
 .home-hero .family-portrait img {-webkit-mask-image:linear-gradient(to bottom,transparent,black 9%);mask-image:linear-gradient(to bottom,transparent,black 9%)}
 .home-hero .family-portrait figcaption {text-align:center;padding:0}
 .site-header nav {gap:8px}
 .site-header nav a {flex:1;padding:9px;font-size:13px}
 .quiet-links {display:grid;grid-template-columns:1fr 1fr}
 .quiet-links a {padding:10px}
 .actions .button {width:100%}
 footer nav a {padding:9px 12px}
 .craft-facts {grid-template-columns:1fr;gap:16px}
}

/* Edge-to-edge welcome photograph and a compact, consistent action palette. */
body:has(.home-hero) main {max-width:none;padding:0}
body:has(.home-hero) main>section:not(.home-hero) {width:min(1360px,calc(100% - clamp(20px,5vw,80px)*2));margin-inline:auto}
.home-hero {display:grid;grid-template-columns:minmax(0,48%) 1fr;min-height:clamp(560px,calc(100svh - 100px),800px);padding:28px clamp(20px,5vw,80px) 40px;gap:0}
.home-hero .hero-copy {align-self:center;max-width:620px}
.home-hero .family-portrait {position:absolute;inset:0 0 0 auto;width:67%;height:100%;margin:0;z-index:0}
.home-hero .family-portrait img {width:100%;height:100%;object-fit:cover;object-position:center 20%;-webkit-mask-image:linear-gradient(to right,transparent 0%,transparent 16%,black 42%);mask-image:linear-gradient(to right,transparent 0%,transparent 16%,black 42%)}
.button,.button.secondary,.read-link,.quiet-links a,.hero-actions>a,.breadcrumb,.next-links a,.site-header nav a,footer nav a,.small-note a,.social-link {
 display:inline-flex;align-items:center;justify-content:center;gap:10px;
 min-height:44px;padding:9px 15px;border:1px solid var(--charcoal);border-radius:15px;
 background:var(--charcoal);color:#fff3df;font:600 15px/1.4 var(--body);text-decoration:none;text-align:center;
}
.hero-actions {display:flex;align-items:center;flex-wrap:nowrap;gap:10px;margin-top:24px;width:max-content;max-width:calc(100vw - 40px)}
.hero-actions>a {white-space:nowrap}
.hero-actions>.button,.thanks>.button {background:var(--brick);border-color:var(--brick);color:#fff3df}
.button:hover,.read-link:hover,.hero-actions>a:hover,.site-header nav a:hover,.social-link:hover {background:#4b4b4b;border-color:#4b4b4b;color:white}
.hero-actions>.button:hover,.thanks>.button:hover {background:#8c3e2d;border-color:#8c3e2d}
.site-header nav a {padding:8px 13px;font-size:15px}
.business-contact {border-radius:15px}
.social-link {display:flex;justify-content:space-between;min-height:48px}
.card-copy .read-link {margin-top:5px}
@media(max-width:1100px) and (min-width:741px){
 .hero-actions {gap:7px}
 .hero-actions>a {font-size:14px;padding:9px 11px}
}
@media(max-width:950px) and (min-width:741px){
 .hero-actions {flex-wrap:wrap;width:auto;max-width:100%}
 .home-hero .hero-copy {max-width:430px}
}
@media(max-width:740px){
 .home-hero {grid-template-columns:1fr;min-height:0;padding:24px 0 0;gap:22px}
 .home-hero .hero-copy {max-width:none;padding-inline:20px}
 .home-hero .family-portrait {position:static;width:100%;height:auto;margin:0}
 .home-hero .family-portrait img {width:100%;height:auto;object-fit:contain;-webkit-mask-image:linear-gradient(to bottom,transparent,black 9%);mask-image:linear-gradient(to bottom,transparent,black 9%)}
 .hero-actions {display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:none;gap:8px;margin-top:18px}
 .hero-actions>.button {grid-column:1/-1}
 .hero-actions>a {white-space:normal;font-size:14px;padding:9px 10px}
 .site-header nav a {font-size:14px;padding:8px 10px}
}

/* More room for the welcome text and the Kenya/Kentucky story graphic. */
@media(min-width:741px){
 .home-hero .hero-copy {transform:translateX(clamp(18px,3vw,48px))}
 .home-hero .family-portrait {right:calc(-1 * clamp(20px,3vw,50px))}
}
.home-story {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%}
.story-map {display:flex;align-items:center;justify-content:center}
.story-map img {width:100%;max-width:410px;height:auto}
.business-contact,.business-contact:hover,.business-contact:focus-visible {color:#fff}
@media(max-width:740px){
 .home-story {grid-template-columns:1fr;gap:25px}
 .story-map img {max-width:280px}
}

/* Larger story artwork, and a shorter transition from texture into the photograph. */
.home-story {grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:6%;border:0}
.story-map img {max-width:620px}
@media(min-width:741px){
 .home-hero .family-portrait {right:calc(-1 * clamp(55px,8vw,135px))}
 .home-hero .family-portrait img {-webkit-mask-image:linear-gradient(to right,transparent,black 24%);mask-image:linear-gradient(to right,transparent,black 24%)}
}
.business-contact {text-shadow:none}
.business-contact .whatsapp-icon {filter:none}
.button,.hero-actions>a,.read-link,.quiet-links a,.breadcrumb,.next-links a,.site-header nav a,footer nav a,.small-note a,.social-link {text-shadow:none}
.brand-family {text-shadow:none}
@media(max-width:740px){
 .home-story {grid-template-columns:1fr;gap:25px}
 .story-map img {max-width:420px}
}

/* Solid green contact button with clear white text. */
.business-contact {background:#147d50;border-color:#147d50;color:#fff}
.business-contact:hover,.business-contact:focus-visible {background:#106942;border-color:#106942;color:#fff}
.story-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
