@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#173d2b;--cream:#f7f6ef;--orange:#d96a3a;--line:#ddded2;--muted:#636a5e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--green);font-family:'DM Sans',Arial,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:4px}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--cream)}.brand{font-size:29px;font-weight:800;letter-spacing:2px;line-height:1}.brand span{display:block;font-size:9px;letter-spacing:6px;margin-top:7px}nav{display:flex;gap:34px;font-size:14px}nav a:hover{color:var(--orange)}.outline{border:1px solid var(--green);background:transparent;padding:13px 20px;border-radius:4px;color:var(--green)}#count{background:var(--green);color:white;border-radius:50%;padding:3px 7px;margin-left:10px;font-size:11px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.hero-copy{padding:70px 8% 30px 10%}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 24px}.hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(48px,5.4vw,84px);line-height:1.06;letter-spacing:-4px;font-weight:500;margin:0 0 25px}.hero h1 em{font-family:Georgia,serif;color:var(--orange);font-weight:400}.hero-copy>p:not(.eyebrow){max-width:410px;line-height:1.8;color:var(--muted);font-size:15px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 24px;background:var(--green);color:var(--cream);border:0;border-radius:4px;font-size:14px}.hero .button{margin-top:20px}.hero-foot{margin-top:50px;font-size:9px;letter-spacing:1.2px;display:flex;gap:15px;align-items:center}.hero-foot i{width:4px;height:4px;background:var(--orange);border-radius:50%}.hero-image{position:relative;background:#e6d8bd;overflow:hidden;margin:24px 24px 24px 0;border-radius:6px}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.image-label{position:absolute;bottom:18px;left:20px;background:#f7f6efe8;padding:10px 12px;font-size:9px;letter-spacing:1px}.ribbon{background:var(--green);color:#dedec9;display:flex;justify-content:space-around;padding:24px;font-family:Georgia,serif;font-size:20px}.section{padding:90px 5%}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-head h2,h2{font-family:Manrope,Arial,sans-serif;font-size:44px;line-height:1.15;letter-spacing:-1.7px;font-weight:500;margin:0}.section-head .eyebrow{margin-bottom:12px}.section-head>p{font-size:14px;color:var(--muted);line-height:1.7}.catalog-tools{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}.filters{display:flex;flex-wrap:wrap;gap:7px}.filters button{border:1px solid var(--line);background:transparent;border-radius:30px;padding:10px 15px;font-size:12px;color:var(--green)}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.search{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--green);min-width:190px}.search span{font-size:25px}.search input{border:0;background:transparent;padding:9px;width:160px;outline-offset:0}.catalog-status{display:flex;justify-content:space-between;margin:20px 0;font-size:11px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 22px}.card{cursor:pointer}.card-image{aspect-ratio:1;background:#e9e8de;border-radius:5px;position:relative;overflow:hidden}.card-image img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.card:hover img{transform:scale(1.035)}.card .tag{position:absolute;left:12px;top:12px;background:#f7f6eff0;padding:5px 8px;font-size:9px;letter-spacing:.5px}.card-text{padding:17px 0;border-bottom:1px solid var(--line)}.card-text small{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.card-text h3{margin:9px 0;font-size:18px;font-weight:500;display:flex;justify-content:space-between}.card-text p{font-size:12px;margin:0;color:var(--muted);line-height:1.5}.card button{border:0;background:transparent;text-align:left;padding:0;width:100%;color:inherit}.placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#d6ddc8,#eeecd9);color:#426044}.placeholder b{font-size:40px;letter-spacing:4px}.placeholder span{font-family:Georgia,serif;font-size:20px;margin:20px;text-align:center}.placeholder small{font-size:9px;letter-spacing:2px}.more{text-align:center;margin:40px}.note{font-size:11px;line-height:1.6;color:var(--muted)}.story{background:#e9ebdf;display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:50px}.story h2{font-size:39px}.story p{font-size:14px;line-height:1.9}.story a{display:inline-block;border-bottom:1px solid;padding:10px 0;margin-top:10px}.values article{border-bottom:1px solid #c3cabb;padding:0 0 16px;margin:0 0 20px}.values span{font-size:10px;color:var(--orange)}.values h3{font-size:17px;font-weight:500;margin:8px 0}.values p{margin:0;font-size:12px}.venture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.venture-grid article{border-top:1px solid var(--green);padding:28px 0}.venture-grid span{font-size:10px;letter-spacing:1px}.venture-grid h3{font-size:25px;font-weight:500;margin:30px 0 15px}.venture-grid p{font-size:14px;line-height:1.7;color:var(--muted);max-width:330px}.venture-grid button{border:0;padding:15px 0;background:transparent;color:var(--green)}.partner{background:var(--green);color:var(--cream);text-align:center}.partner h2{font-size:52px}.partner p:not(.eyebrow){color:#d2daca;font-size:14px;line-height:1.8}.partner .button{background:#e8a980;color:var(--green);margin:20px}.partner small{display:block;font-size:11px;color:#c5cfbe}footer{display:flex;align-items:center;justify-content:space-between;padding:45px 5%;font-size:11px}footer p{color:var(--muted)}dialog{border:0;border-radius:8px;background:var(--cream);color:var(--green);max-width:820px;width:90%;padding:40px;max-height:90vh}dialog::backdrop{background:#0a241dbb;backdrop-filter:blur(5px)}.close{position:absolute;right:15px;top:10px;font-size:28px;border:0;background:transparent;color:var(--green);z-index:2}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.detail-layout img{width:100%;border-radius:4px}.detail-layout h2{font-size:32px}.detail-layout p{line-height:1.7;font-size:14px}dialog label{display:block;font-size:13px;margin:22px 0}dialog input,dialog textarea{width:100%;padding:12px;border:1px solid #b9c2af;background:white;margin-top:8px;border-radius:3px}textarea{min-height:90px;resize:vertical}#list-items>div{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}#list-items button{background:transparent;border:0;color:var(--green);text-decoration:underline;font-size:12px}#shortlist h2{font-size:32px}#shortlist>p{line-height:1.7}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:14px 22px;border-radius:5px;z-index:10;display:none}.skip{position:absolute;top:-80px;background:white;padding:15px}.skip:focus{top:0;z-index:20}[hidden]{display:none!important}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.catalog-tools{flex-direction:column}.search{align-self:flex-end}.story{grid-template-columns:1fr 1fr}.story>.eyebrow{grid-column:1/-1}.hero-copy{padding-top:50px}.hero h1{font-size:57px}.hero{min-height:570px}.hero-foot{font-size:8px;gap:9px}}@media(max-width:650px){header{height:82px;padding:0 6%}nav{display:none}.brand{font-size:24px}.outline{padding:11px 12px;font-size:12px}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 6% 30px}.hero h1{font-size:58px;letter-spacing:-3px}.hero-foot{margin-top:35px}.hero-image{height:390px;margin:0 5% 22px}.ribbon{font-size:14px;padding:20px 10px;gap:20px;text-align:center}.ribbon span:last-child{display:none}.section{padding:55px 6%}.section-head{display:block}.section-head h2,h2{font-size:34px}.section-head>p{font-size:13px}.grid{grid-template-columns:repeat(2,1fr);gap:24px 14px}.filters{gap:6px}.filters button{font-size:11px;padding:9px 11px}.search{width:100%}.search input{width:100%}.catalog-status{font-size:10px;gap:15px;line-height:1.5}.catalog-status span:last-child{text-align:right;max-width:170px}.card-text h3{font-size:15px}.card-text small{font-size:8px}.card-text p{font-size:11px}.placeholder b{font-size:25px}.placeholder span{font-size:16px}.story{display:block}.story h2{font-size:34px}.values{margin-top:40px}.venture-grid{grid-template-columns:1fr}.venture-grid h3{margin-top:18px}.partner h2{font-size:36px}footer{display:grid;grid-template-columns:1fr 1fr;gap:25px}footer p{line-height:1.8}dialog{padding:35px 22px}.detail-layout{grid-template-columns:1fr}.detail-layout img{max-height:250px;object-fit:contain}.detail-layout h2{font-size:28px}.more{margin:30px 0}.hero-copy>p:not(.eyebrow){font-size:14px}}

/* Preserve complete product silhouettes in catalog and detail views. */
.card-image img{object-fit:contain;background:#f3efe6}.detail-layout img{object-fit:contain;max-height:540px}.card-image .tag{font-size:8px;padding:4px 6px;background:#f7f6efdd}

/* Motion and interaction: content stays visible without animation support. */
:root{--motion:180ms;--ease:cubic-bezier(.2,.7,.2,1)}
header{position:sticky;top:0;z-index:5;height:82px;transition:box-shadow var(--motion)}header.scrolled{box-shadow:0 3px 16px #173d2b10}
html{scroll-padding-top:106px}body.dialog-open{overflow:hidden}html{scrollbar-gutter:stable}
button,.button{touch-action:manipulation;transition:background-color var(--motion),color var(--motion),box-shadow var(--motion),transform var(--motion)}
button:active,.button:active{transform:scale(.98)}.button:hover{background:#27543c}.outline:hover{background:#173d2b0a}
nav a{position:relative;padding:8px 0;transition:color var(--motion)}nav a::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transition:transform var(--motion)}nav a[aria-current]::after{transform:scaleX(1)}
.menu-toggle{display:none}.filters button:hover:not(.active){background:#e9ebdf}.filters button{min-height:44px}.card{transition:transform var(--motion),box-shadow var(--motion);border-radius:5px}.card-image img{transition:transform 300ms var(--ease)}
@media(hover:hover){.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #173d2b0b}.card:hover img{transform:scale(1.035)}}
.card:focus-within{box-shadow:0 0 0 2px var(--orange)}.card button:active img{transform:scale(1.015)}
#count{display:inline-block}.empty-state{grid-column:1/-1;text-align:center;padding:55px 20px;background:#eceee3;border-radius:6px}.empty-state p{color:var(--muted)}
dialog{overscroll-behavior:contain}dialog::backdrop{animation:backdrop-in 220ms var(--ease)}@keyframes backdrop-in{from{background:#0a241d00}to{background:#0a241dbb}}
#shortlist{margin:0 0 0 auto;min-height:100dvh;max-height:100dvh;max-width:500px;border-radius:12px 0 0 12px;padding-top:55px}
.close{width:44px;height:44px;display:grid;place-items:center}.close:hover{background:#173d2b0a;border-radius:50%}#list-items button{min-height:44px}
.dialog-feedback{font-size:13px;line-height:1.6;min-height:1.6em;margin-top:12px}.dialog-feedback button,#toast button{font:inherit;border:0;border-bottom:1px solid currentColor;background:none;color:inherit;padding:8px;font-weight:700;min-height:44px}
#toast{display:flex;align-items:center;gap:15px;max-width:min(90vw,560px);width:max-content;box-shadow:0 6px 24px #0002;font-size:13px;line-height:1.5;z-index:20}#toast:focus-within{outline:2px solid var(--orange)}
.hero-image img{aspect-ratio:3/2}.detail-layout img{aspect-ratio:1}.partner .button:hover{background:#f3bb96}
@media(max-width:650px){header{gap:10px;padding:0 5%;height:76px}.brand{font-size:22px}.brand span{font-size:8px;letter-spacing:4px}.menu-toggle{display:flex;gap:7px;margin-left:auto;align-items:center;min-height:44px}#open-list{min-height:44px}#count{margin-left:4px}nav{position:absolute;top:100%;left:0;right:0;padding:12px 6% 22px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 12px 18px #173d2b10;gap:4px;flex-direction:column}nav.is-open{display:flex}nav a{padding:14px 0}#toast{bottom:12px;padding:12px 16px}#shortlist{width:100%;border-radius:0}.hero h1{font-size:clamp(44px,12vw,58px)}.detail-layout img{max-height:250px}.button{min-height:48px}}
@media(max-width:370px){#open-list{font-size:11px;padding:10px 7px}.menu-toggle{font-size:11px;padding:10px 7px}.brand{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.card:hover,.card:hover img,button:active,.button:active{transform:none}}

/* Direct contact for development-stage enquiries. */
.contact-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.partner .contact-links{justify-content:center}.contact-details a{overflow-wrap:anywhere;text-underline-offset:4px}.contact-details{line-height:1.9}#shortlist .contact-links .button{margin:0}#contact{scroll-margin-top:100px}

#inquiry-options[hidden]{display:none}#inquiry-options .contact-links{gap:12px}#inquiry-options .button{margin:0}#inquiry-options{margin-top:20px}

/* Approved contact and product controls: SVG icons render consistently on mobile. */
.ui-icon{display:block;flex:none;width:22px;height:22px;pointer-events:none}
.card-text h3{align-items:flex-start;gap:10px;line-height:1.45}
.product-arrow{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;transition:background-color var(--motion),color var(--motion)}
.card:hover .product-arrow{background:var(--green);color:var(--cream)}
.contact-links .contact-button{justify-content:center;gap:10px;min-height:48px;padding:13px 22px;border-radius:999px;font-weight:500;white-space:nowrap;margin:0}
.contact-links .contact-email{background:var(--green);color:var(--cream)}
.contact-links .contact-email:hover{background:#27543c}
.partner .contact-links .contact-email{background:var(--cream);color:var(--green)}
.partner .contact-links .contact-email:hover{background:#e7eadf}
.contact-links .contact-whatsapp{background:#087f5b;color:#fff}
.contact-links .contact-whatsapp:hover{background:#066548}
#detail{padding-top:72px}
#detail .close{top:16px;right:16px;width:44px;height:44px;padding:0;border:1px solid #173d2b55;border-radius:50%;background:var(--cream);color:var(--green);box-shadow:0 2px 8px #173d2b08}
#detail .close:hover{background:var(--green);color:var(--cream)}
#detail .close:focus-visible{outline:2px solid var(--green);outline-offset:4px}
@media(max-width:420px){.card-text h3{gap:7px}.product-arrow{flex-basis:32px;width:32px;height:32px}.product-arrow .ui-icon{width:18px;height:18px}.contact-links .contact-button{padding:13px 17px}}

/* Consistent line icons for every landing-page navigation control. */
.ui-icon.inline-icon{display:inline-block;vertical-align:middle}.hero .inline-icon{width:22px;height:22px}.story a .inline-icon,.venture-grid button .inline-icon,footer a .inline-icon,#show-more .inline-icon{margin-left:8px;width:20px;height:20px}.search .inline-icon,.menu-toggle .inline-icon{width:20px;height:20px}
