@charset "UTF-8";
:root{color-scheme:light;--forest:#284b38;--deep:#19372b;--forest2:#37634a;--leaf:#657e5f;--lime:#dfe6c4;--gold:#e3b53e;--paper:#f7f6ef;--ink:#17251d;--muted:#657168;--line:#dfe4d9;--shadow:0 24px 70px rgba(8,41,30,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b5ce78;outline-offset:3px}::selection{background:var(--lime);color:var(--deep)}.container{width:min(1200px,calc(100% - 56px));margin-inline:auto}.brand{display:inline-flex;align-items:center;gap:11px;min-width:max-content;color:var(--forest)}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:var(--forest);color:var(--lime);font:700 24px/1 Georgia,serif;border-radius:2px 12px 2px 12px}.brand-word{display:grid;line-height:1}.brand-word strong{font-size:23px;letter-spacing:.14em;font-weight:850}.brand-word small{font-size:8px;letter-spacing:.18em;color:#6c7d70;margin-top:5px;font-weight:800}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:47px;padding:12px 19px;border:1px solid var(--forest);border-radius:2px;background:var(--forest);color:#fff;font-size:12px;font-weight:800;line-height:1.25;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}.button:hover{background:var(--forest2);border-color:var(--forest2);transform:translateY(-1px)}.button-arrow{font-size:17px;line-height:1}.button.light{background:var(--paper);border-color:var(--paper);color:var(--forest)}.button.light:hover{background:#fff;border-color:#fff}.button.outline{background:transparent;border-color:#ffffff75;color:#fff}.button.outline:hover{background:#ffffff12;border-color:#fff}.button.ghost{background:transparent;color:var(--forest);border-color:var(--line)}.button.ghost:hover{background:var(--paper)}.menu-icon{display:grid;gap:4px;width:20px}.menu-icon i{height:2px;background:var(--forest);display:block}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--leaf);font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;line-height:1.5}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor}.hero{overflow:hidden;background:var(--deep);color:#fff}.hero-shell{min-height:590px;display:grid;grid-template-columns:.92fr 1.08fr;align-items:stretch}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:66px 0}.hero .eyebrow{color:#cfdf9c}.hero h1{max-width:650px;margin:22px 0;font:500 clamp(46px,6vw,78px)/.99 Georgia,"Times New Roman",serif;letter-spacing:-.055em}.hero h1 em{color:var(--lime);font-weight:500}.hero-copy>p{max-width:490px;margin:0;color:#d0ded3;font-size:15px;line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-meta{display:flex;align-items:center;gap:13px;margin-top:38px;color:#c2d0c3;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.hero-meta:before{content:"";width:35px;height:1px;background:var(--gold)}.hero-media{position:relative;min-height:500px;margin-inline-start:22px;overflow:hidden;background:#294d34}.hero-media:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#19372b40,transparent 44%),linear-gradient(0deg,#19372b80,transparent 40%)}.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-index{position:absolute;z-index:2;top:26px;inset-inline-end:24px;border:1px solid #ffffff9c;color:#fff;padding:9px 12px;font-size:9px;font-weight:800;letter-spacing:.16em}.hero-caption{position:absolute;z-index:2;bottom:25px;inset-inline-start:25px;inset-inline-end:25px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;color:#fff}.hero-caption strong{display:block;font:400 25px/1.15 Georgia,serif}.hero-caption span{display:block;margin-top:7px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#e2eadc}.hero-caption-mark{display:grid;place-items:center;width:54px;height:54px;border:1px solid #ffffffa6;border-radius:50%;font:26px Georgia,serif;color:#e7d18a;flex:0 0 auto}
.proof-strip{background:var(--paper);border-bottom:1px solid var(--line)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-item{min-height:88px;display:flex;align-items:center;gap:13px;padding:18px 21px;border-inline-start:1px solid var(--line)}.proof-item:first-child{border-inline-start:0;padding-inline-start:0}.proof-number{font:27px/1 Georgia,serif;color:var(--leaf)}.proof-copy strong{display:block;font-size:11px;font-weight:850}.proof-copy span{display:block;margin-top:2px;color:var(--muted);font-size:10px}.section{padding:91px 0}.section.soft{background:var(--paper)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head>div{max-width:670px}.section h2,.page-head h1{margin:13px 0 12px;font:500 clamp(34px,4.2vw,56px)/1.07 Georgia,"Times New Roman",serif;letter-spacing:-.04em}.section-head .muted{max-width:560px;margin-bottom:0}.muted{color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--forest);font-size:12px;font-weight:850;white-space:nowrap}.text-link span{display:grid;place-items:center;width:31px;height:31px;border:1px solid #cad5c8;border-radius:50%;font-size:18px;transition:transform .2s,background .2s}.text-link:hover span{transform:translateX(3px);background:var(--lime)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.category{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--line);transition:border-color .2s,transform .2s,box-shadow .2s}.category:hover{border-color:#a5b89c;transform:translateY(-3px);box-shadow:0 16px 38px #0d2f1f12}.category-image{position:relative;height:220px;overflow:hidden;background:linear-gradient(135deg,#e7ebd8,#a6ba8f 58%,#486a44);display:flex;align-items:center;justify-content:center;color:var(--forest);font:23px Georgia,serif}.category-image:after{content:"";position:absolute;inset:12px;border:1px solid #ffffff60;pointer-events:none}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.category:hover .category-image img{transform:scale(1.035)}.category-image span{position:relative;z-index:1;padding:24px;text-align:center}.category-body{display:flex;flex-direction:column;flex:1;align-items:flex-start;padding:21px 22px 22px}.category h3{margin:0 0 8px;font:500 23px/1.2 Georgia,serif}.category-body p{flex:1;margin:0 0 20px;font-size:12px;line-height:1.75}.arrow{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-size:11px;font-weight:850}.arrow:after{content:"↗";font-size:16px}.product-count{margin-inline-start:auto;font-size:10px;color:var(--muted);letter-spacing:.1em}.catalog-note{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:28px;margin-top:31px;border-top:1px solid var(--line)}.catalog-note p{max-width:620px;margin:0;font-size:12px}
.approach-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(40px,8vw,115px);align-items:start}.approach-copy{position:sticky;top:130px}.approach-copy h2{max-width:450px}.approach-copy>p{max-width:455px;color:var(--muted);font-size:13px}.approach-list{border-top:1px solid var(--line)}.approach-item{display:grid;grid-template-columns:49px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.approach-num{font:24px Georgia,serif;color:var(--leaf)}.approach-item h3{margin:0 0 5px;font-size:14px;font-weight:850}.approach-item p{margin:0;color:var(--muted);font-size:12px;line-height:1.75}.feature-panel{position:relative;overflow:hidden;background:#e6ecd8;padding:clamp(27px,4vw,48px);color:var(--forest)}.feature-panel:after{content:"";position:absolute;width:200px;height:200px;bottom:-100px;inset-inline-end:-55px;border:1px solid #284b382d;border-radius:50%;box-shadow:0 0 0 18px #284b3808,0 0 0 37px #284b3806}.feature-panel strong{position:relative;z-index:1;display:block;max-width:580px;margin:13px 0;font:500 clamp(25px,3.2vw,38px)/1.16 Georgia,serif}.feature-panel p{position:relative;z-index:1;max-width:540px;color:#526b56;font-size:12px}.feature-panel .text-link{position:relative;z-index:1;margin-top:12px}.dark-feature{position:relative;overflow:hidden;padding:clamp(30px,5vw,61px);background:#082b20;color:#fff}.dark-feature:after{content:"";position:absolute;inset-inline-end:-80px;top:-145px;width:390px;height:390px;border:1px solid #dfe6c42e;border-radius:50%;box-shadow:0 0 0 32px #dfe6c406,0 0 0 64px #dfe6c406}.dark-feature .eyebrow{color:var(--lime)}.dark-feature h2,.dark-feature p,.dark-feature .button{position:relative;z-index:1}.dark-feature h2{max-width:690px}.dark-feature p{max-width:620px;color:#cad7cb;font-size:13px}.dark-feature .button{margin-top:10px}.cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:clamp(28px,4vw,48px);background:var(--lime);color:var(--forest);overflow:hidden}.cta:after{content:"";position:absolute;width:220px;height:220px;top:-135px;inset-inline-end:20%;border:1px solid #284b382e;border-radius:50%;box-shadow:0 0 0 19px #284b3808,0 0 0 40px #284b3806}.cta>div,.cta>.button{position:relative;z-index:1}.cta h2{max-width:670px;margin:10px 0 8px;font:500 clamp(29px,4vw,44px)/1.1 Georgia,serif}.cta p{margin:0;color:#526b56;font-size:12px}
.footer{background:var(--deep);color:#e9efe5;padding:62px 0 23px}.footer-top{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:55px;padding-bottom:40px}.footer .brand{color:#fff}.footer .brand-mark{background:#e3ebd0;color:var(--forest)}.footer .brand-word small{color:#b5c5b5}.footer-intro{max-width:410px;margin:19px 0 0;color:#c1d0c2;font-size:12px}.footer-heading{margin:5px 0 15px;color:#dfe6c4;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.footer-links{display:grid;gap:9px}.footer-links a{color:#d6e0d5;font-size:12px}.footer-links a:hover{color:var(--lime)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:19px;border-top:1px solid #ffffff20;color:#aebfb0;font-size:10px}
.page-head{position:relative;overflow:hidden;padding:69px 0 72px;background:var(--paper)}.page-head:after{content:"";position:absolute;top:-190px;inset-inline-end:-20px;width:410px;height:410px;border:1px solid #284b3821;border-radius:50%;box-shadow:0 0 0 32px #284b3806,0 0 0 64px #284b3805;pointer-events:none}.page-head .container{position:relative;z-index:1}.breadcrumbs{margin-bottom:27px;color:#7a857b;font-size:11px}.breadcrumbs a{color:var(--forest);font-weight:750}.page-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.48fr);align-items:end;gap:44px}.page-head h1{max-width:850px;margin:13px 0}.page-head .lead{max-width:720px;margin:0;color:var(--muted);font-size:15px;line-height:1.8}.page-aside-note{padding-inline-start:22px;border-inline-start:1px solid #c4cebd;color:#667567;font-size:12px;line-height:1.8}.page-aside-note strong{display:block;margin-bottom:5px;color:var(--forest);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.content-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);gap:65px;align-items:start}.content-copy{max-width:800px;font-size:16px;line-height:1.9}.content-copy p{margin:0 0 22px}
.product-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(35px,6vw,75px);align-items:start;padding:68px 0 85px}.product-gallery-main{position:relative;overflow:hidden;min-height:380px;background:linear-gradient(135deg,#e8ecd9,#a9bd8c 58%,#426744)}.product-gallery-main img{width:100%;height:100%;min-height:380px;object-fit:cover}.product-visual{min-height:380px;background:linear-gradient(145deg,#e2ebd5,#6e9b65,#275438)}.product-gallery-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.product-gallery-thumbs img{width:100%;height:100px;object-fit:cover}.product-detail-copy{padding-top:8px}.product-detail-copy h2{margin:14px 0 16px;font:500 clamp(30px,3.7vw,42px)/1.12 Georgia,serif}.product-detail-copy>p{color:var(--muted);font-size:13px;line-height:1.9}.detail-block{padding:18px 0;border-top:1px solid var(--line);margin-top:21px}.detail-block h3{margin:0 0 7px;font-size:12px;font-weight:850}.detail-block p{margin:0;color:var(--muted);font-size:12px}.product-detail-copy .button{margin-top:21px}
.form-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.62fr);gap:clamp(34px,7vw,85px);align-items:start}.form-card{padding:clamp(23px,4vw,42px);border:1px solid var(--line);background:#fff;box-shadow:0 18px 50px #19372b0b}.form-card h2{font:500 30px/1.15 Georgia,serif;margin:0 0 8px}.form-card>p{margin:0 0 27px;color:var(--muted);font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:flex;min-width:0;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:850;color:#314538}.field input,.field select,.field textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid #d7ded3;border-radius:2px;background:#fcfcf9;color:var(--ink);font-size:13px;line-height:1.45}.field input:focus,.field select:focus,.field textarea:focus{border-color:#657e5f;box-shadow:0 0 0 3px #657e5f1f;outline:0}.field textarea{min-height:135px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#8e9a8e}.field-help{margin:2px 0 0;color:var(--muted);font-size:10px}.form-submit{display:flex;align-items:center;flex-wrap:wrap;gap:15px}.notice{padding:14px 16px;background:#e6f1dd;border:1px solid #c5d9b7;color:#23452e;margin-bottom:21px;font-size:12px}.notice.error{background:#fff0ed;border-color:#e8b6ad;color:#8b291d}.notice ul{margin:8px 0 0;padding-inline-start:20px}.contact-details{display:flex;flex-direction:column;gap:0;padding:27px;background:var(--forest);color:#fff}.contact-details .eyebrow{color:var(--lime)}.contact-details h2{margin:12px 0 8px;font:500 29px/1.15 Georgia,serif}.contact-details>p{margin:0;padding:15px 0;border-bottom:1px solid #ffffff24;color:#cdd9cb;font-size:11px;overflow-wrap:anywhere}.contact-details>p strong{display:inline-block;margin-bottom:5px;color:#fff;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.contact-details a{color:#edf5df;text-decoration:underline;text-decoration-color:#81977f;text-underline-offset:3px}.contact-details .button{align-self:flex-start;margin-top:20px;background:var(--lime);border-color:var(--lime);color:var(--forest)}.contact-details .button:hover{background:#deebbd;border-color:#deebbd}.next-steps{margin-top:27px;padding-top:24px;border-top:1px solid #ffffff25}.next-steps h3{margin:0 0 13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.next-step{display:grid;grid-template-columns:29px 1fr;gap:11px;padding:11px 0}.next-step span{color:var(--lime);font:20px Georgia,serif}.next-step strong{display:block;font-size:11px}.next-step p{margin:2px 0 0;color:#b9cbbb;font-size:10px}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;padding:32px 0 0}.pagination a,.pagination span{display:grid;place-items:center;min-width:37px;min-height:37px;padding:7px 10px;border:1px solid var(--line);color:var(--forest);font-size:11px}.pagination .active span{background:var(--forest);border-color:var(--forest);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.gallery-grid figure{margin:0;border-bottom:1px solid var(--line);padding-bottom:14px}.gallery-grid img{width:100%;height:260px;object-fit:cover;background:var(--paper)}.gallery-grid figcaption{padding:11px 0 0;font:19px Georgia,serif}.empty-state{padding:42px 24px;border:1px dashed #b7c5b3;background:var(--paper);text-align:center}.empty-state strong{display:block;font:500 25px Georgia,serif}.empty-state p{max-width:500px;margin:8px auto 19px;color:var(--muted);font-size:12px}
@media(max-width:1000px){.hero-shell{grid-template-columns:1fr .95fr}.hero h1{font-size:clamp(42px,5.7vw,64px)}.hero-media{margin-inline-start:0}.proof-item{padding-inline:13px}.approach-grid{gap:43px}.footer-top{gap:33px}.content-layout{gap:38px}}
@media(max-width:800px){.container{width:min(100% - 36px,1200px)}.hero-shell{grid-template-columns:1fr;padding-bottom:18px}.hero-copy{padding:56px 0 35px}.hero h1{max-width:630px;font-size:clamp(46px,9vw,70px)}.hero-media{min-height:330px;margin:0}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-item{border-bottom:1px solid var(--line)}.proof-item:nth-child(odd){border-inline-start:0;padding-inline-start:0}.proof-item:nth-child(even){border-inline-start:1px solid var(--line)}.section{padding:70px 0}.approach-grid,.content-layout,.product-detail,.form-layout{grid-template-columns:1fr}.approach-copy{position:static}.product-detail{padding:48px 0 62px}.page-intro-grid{grid-template-columns:1fr;gap:22px}.page-aside-note{max-width:550px}.footer-top{grid-template-columns:1.3fr .7fr;gap:32px}.footer-top>div:first-child{grid-column:1/-1}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.container{width:calc(100% - 30px)}.topbar-inner{min-height:34px;font-size:9px}.brand-mark{width:34px;height:34px}.brand-word strong{font-size:21px}.hero-copy{padding:49px 0 29px}.hero h1{font-size:clamp(41px,11.8vw,56px)}.hero-copy>p{font-size:13px}.hero-meta{margin-top:28px;font-size:9px}.hero-media{min-height:270px}.hero-caption{inset-inline-start:17px;inset-inline-end:17px;bottom:17px}.hero-caption strong{font-size:22px}.hero-caption-mark{width:45px;height:45px}.proof-item{min-height:74px;padding:13px 9px}.proof-number{font-size:22px}.proof-copy strong{font-size:10px}.proof-copy span{font-size:9px}.section{padding:56px 0}.section-head{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:25px}.section h2,.page-head h1{font-size:36px}.grid{grid-template-columns:1fr;gap:14px}.category-image{height:215px}.category-body{padding:18px}.category h3{font-size:22px}.catalog-note,.cta{align-items:flex-start;flex-direction:column}.catalog-note .button,.cta>.button{width:100%}.feature-panel{padding:26px}.approach-item{grid-template-columns:36px 1fr;gap:12px;padding:19px 0}.approach-num{font-size:20px}.footer{padding:45px 0 18px}.footer-top{grid-template-columns:1fr 1fr;gap:26px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:7px}.page-head{padding:47px 0 49px}.breadcrumbs{margin-bottom:19px}.page-aside-note{padding-inline-start:14px}.product-gallery-main,.product-gallery-main img,.product-visual{min-height:260px}.product-gallery-thumbs img{height:76px}.form-card{padding:21px 16px}.form-card h2{font-size:26px}.form-grid{grid-template-columns:1fr;gap:14px}.field.full{grid-column:auto}.form-submit .button{width:100%}.contact-details{padding:22px 19px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:235px}.dark-feature{padding:28px 21px}.cta h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Warm yellow accents paired with a softer, lower-saturation green palette. */
:root{--sun:#e3b53e;--sun-soft:#fff4d0}
.hero-actions .button.light{background:var(--sun);border-color:var(--sun);color:var(--deep)}
.hero-actions .button.light:hover{background:var(--sun-soft);border-color:var(--sun-soft)}
.hero .eyebrow,.hero h1 em,.footer-heading{color:var(--sun)}
.text-link:hover span,.button.ghost:hover{background:var(--sun-soft)}
.cta{background:var(--sun-soft);color:var(--forest)}
.contact-details .button{background:var(--sun);border-color:var(--sun);color:var(--deep)}
.contact-details .button:hover{background:var(--sun-soft);border-color:var(--sun-soft)}
@keyframes language-pop-in{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:560px){}
@media(prefers-reduced-motion:reduce){}


/* ENCAP art direction — editorial agriculture, clear commercial actions, fast native UI. */
:root {
    --encap-forest: #102f23;
    --encap-forest-mid: #1d4a35;
    --encap-leaf: #78945b;
    --encap-citrus: #efc85a;
    --encap-cream: #f5f3e9;
    --encap-paper: #fbfaf6;
    --encap-ink: #14271d;
    --encap-muted: #6f7d70;
    --encap-line: #e0e5d9;
    --encap-radius: 5px;
}
html { scroll-padding-top: 100px; }
body { font-family: "DM Sans", "IBM Plex Sans Arabic", Arial, sans-serif; color: var(--encap-ink); }
[lang="ar"] body, html[lang="ar"] body { font-family: "IBM Plex Sans Arabic", Tahoma, Arial, sans-serif; }
[lang="ar"] h1, [lang="ar"] h2, [lang="ar"] h3 { letter-spacing: 0; }
.skip-link { position: fixed; z-index: 1000; top: 12px; inset-inline-start: 12px; padding: 12px 16px; background: var(--encap-citrus); color: var(--encap-forest); transform: translateY(-160%); font-size: 12px; font-weight: 800; }
.skip-link:focus { transform: translateY(0); }
.brand-mark { width: 42px; height: 42px; border-radius: 3px 14px 3px 14px; background: var(--encap-forest); color: var(--encap-citrus); }
.brand-word strong { letter-spacing: .17em; }
.button { min-height: 48px; padding: 13px 21px; border-radius: 3px; box-shadow: none; }
.button, .text-link, .category { -webkit-tap-highlight-color: transparent; }
.button:focus-visible { outline-color: var(--encap-citrus); }
.hero { position: relative; overflow: clip; background: var(--encap-forest); }
.hero:before { content: ""; position: absolute; width: 510px; height: 510px; inset-inline-start: -290px; bottom: -340px; border: 1px solid rgba(239,200,90,.18); border-radius: 50%; box-shadow: 0 0 0 35px rgba(239,200,90,.025), 0 0 0 75px rgba(239,200,90,.02); pointer-events: none; }
.hero-shell { position: relative; z-index: 1; grid-template-columns: minmax(0,.91fr) minmax(0,1.09fr); gap: clamp(34px,5vw,76px); min-height: 660px; padding-block: 34px; }
.hero-copy { padding: 48px 0 60px; }
.hero .eyebrow { color: #e8dca4; letter-spacing: .15em; }
.hero h1 { max-width: 700px; margin: 22px 0 24px; font-family: "DM Sans", Georgia, sans-serif; font-size: clamp(48px,5.35vw,78px); font-weight: 600; line-height: .99; letter-spacing: -.065em; text-wrap: balance; }
[lang="ar"] .hero h1 { font-family: "IBM Plex Sans Arabic", Tahoma, sans-serif; font-size: clamp(39px,4.5vw,64px); line-height: 1.27; font-weight: 700; letter-spacing: 0; }
.hero-copy > p { max-width: 470px; color: #d6e1d5; font-size: 15px; line-height: 1.95; }
[lang="ar"] .hero-copy > p { font-size: 16px; line-height: 2; }
.hero-actions { gap: 12px; margin-top: 31px; }
.hero-actions .button.light { background: var(--encap-citrus); border-color: var(--encap-citrus); color: var(--encap-forest); }
.hero-actions .button.light:hover { background: #f7d977; border-color: #f7d977; }
.hero-actions .button.outline { border-color: rgba(255,255,255,.42); }
.hero-actions .button.outline:hover { border-color: #fff; background: rgba(255,255,255,.07); }
.hero-meta { margin-top: 35px; color: #b9cbb9; letter-spacing: .14em; }
.hero-media { min-height: 570px; margin: 0; overflow: visible; border-radius: 4px 68px 4px 4px; isolation: isolate; box-shadow: 0 28px 65px rgba(0,0,0,.19); }
.hero-media:before { border-radius: inherit; background: linear-gradient(90deg, rgba(16,47,35,.24), transparent 42%), linear-gradient(0deg, rgba(8,35,23,.8), transparent 52%); }
.hero-media img { border-radius: inherit; }
.hero-media img { object-position: center; }
.hero-index { top: 23px; inset-inline-end: 23px; padding: 10px 13px; border-color: rgba(255,255,255,.58); background: rgba(15,40,28,.28); backdrop-filter: blur(8px); font-size: 9px; letter-spacing: .15em; }
.hero-caption { inset-inline-start: 28px; inset-inline-end: 28px; bottom: 28px; }
.hero-caption strong { font-size: clamp(25px,2.4vw,34px); line-height: 1.1; }
.hero-caption span { font-size: 10px; line-height: 1.7; letter-spacing: .06em; }
.hero-caption-mark { border-color: rgba(239,200,90,.7); color: var(--encap-citrus); }
.hero-float-card { position: absolute; z-index: 3; top: 22%; inset-inline-start: 18px; display: flex; align-items: center; gap: 12px; width: min(320px, calc(100% - 24px)); padding: 14px 16px; border: 1px solid rgba(255,255,255,.52); background: rgba(251,250,246,.96); box-shadow: 0 18px 38px rgba(8,30,18,.2); color: var(--encap-forest); }
.hero-float-mark { display: grid; place-items: center; flex: 0 0 auto; width: 39px; height: 39px; background: var(--encap-forest); color: var(--encap-citrus); font: 700 24px Georgia,serif; }
.hero-float-copy { display: grid; min-width: 0; gap: 3px; }
.hero-float-copy strong { font-size: 12px; line-height: 1.4; }
.hero-float-copy small { color: var(--encap-muted); font-size: 9px; line-height: 1.5; }
.hero-float-arrow { display: grid; place-items: center; margin-inline-start: auto; width: 29px; height: 29px; background: #edf0e4; font-size: 17px; flex: 0 0 auto; }
.proof-strip { position: relative; z-index: 2; background: var(--encap-paper); border-bottom: 1px solid var(--encap-line); }
.proof-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.proof-item { min-height: 98px; gap: 15px; padding-inline: 23px; border-color: var(--encap-line); }
.proof-number { color: var(--encap-leaf); font-size: 30px; }
.proof-copy strong { font-size: 11px; letter-spacing: -.01em; }
.proof-copy span { line-height: 1.6; }
.editorial-intro { position: relative; overflow: hidden; padding: clamp(67px,8vw,112px) 0; background: var(--encap-cream); }
.editorial-intro:after { content: ""; position: absolute; top: -180px; inset-inline-end: -190px; width: 440px; height: 440px; border: 1px solid rgba(16,47,35,.13); border-radius: 50%; box-shadow: 0 0 0 34px rgba(16,47,35,.025), 0 0 0 70px rgba(16,47,35,.02); pointer-events: none; }
.editorial-intro-grid { position: relative; z-index: 1; display: grid; grid-template-columns: .55fr 1.2fr .8fr; align-items: start; gap: clamp(26px,4vw,58px); }
.editorial-side-label { display: flex; flex-direction: column; gap: 9px; padding-top: 4px; color: #7b8878; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.editorial-side-label span:first-child { color: var(--encap-forest); font-size: 12px; letter-spacing: .21em; }
.editorial-heading h2 { max-width: 590px; margin: 15px 0 0; font-size: clamp(34px,4.1vw,56px); font-weight: 500; line-height: 1.1; letter-spacing: -.055em; text-wrap: balance; }
[lang="ar"] .editorial-heading h2 { font-size: clamp(29px,3.4vw,45px); line-height: 1.5; letter-spacing: 0; }
.editorial-summary { padding-top: 31px; }
.editorial-summary p { margin: 0 0 21px; color: #57695a; font-size: 13px; line-height: 2; }
.section { padding: clamp(68px,8vw,105px) 0; }
.section.soft { background: var(--encap-paper); }
.section-head { margin-bottom: 38px; gap: 34px; }
.section-head > div { max-width: 740px; }
.section h2 { font-size: clamp(35px,4vw,55px); line-height: 1.1; font-weight: 500; letter-spacing: -.052em; }
[lang="ar"] .section h2 { line-height: 1.5; letter-spacing: 0; }
.section-head .muted { max-width: 590px; font-size: 13px; line-height: 1.9; }
.eyebrow { color: #638052; font-size: 9px; letter-spacing: .18em; }
.text-link { gap: 12px; }
.text-link span { border-color: #c7d2c2; transition: transform .18s, background .18s, border-color .18s; }
[dir="rtl"] .text-link:hover span { transform: translateX(-3px); }
.grid { gap: 20px; }
.category { overflow: hidden; border: 1px solid #e1e6da; border-radius: 4px; background: #fff; transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.category:hover { transform: translateY(-5px); border-color: #b5c6a9; box-shadow: 0 19px 45px rgba(16,47,35,.11); }
.category-image { height: clamp(210px,22vw,278px); background: linear-gradient(140deg,#e8ecd9 0%,#b6c89d 48%,#60805b 100%); }
.category-image:after { inset: 10px; border-color: rgba(255,255,255,.55); }
.category-image img { transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .4s; }
.category:hover .category-image img { transform: scale(1.055); filter: saturate(1.04); }
.category-index { position: absolute !important; z-index: 2; top: 20px; inset-inline-start: 20px; display: grid; place-items: center; width: 34px; height: 34px; padding: 0 !important; background: rgba(251,250,246,.94); color: var(--encap-forest); font: 700 10px "DM Sans",sans-serif; border: 0; text-align: center; }
.category-body { padding: 22px 23px 23px; }
.category h3 { font-size: 25px; line-height: 1.25; letter-spacing: -.03em; }
[lang="ar"] .category h3 { font-family: "IBM Plex Sans Arabic",Tahoma,sans-serif; font-size: 21px; letter-spacing: 0; }
.category-body p { min-height: 43px; line-height: 1.85; }
.arrow { padding-top: 2px; border-bottom: 1px solid transparent; }
.category:hover .arrow { border-bottom-color: #b7c8ad; }
.catalog-note { padding-top: 26px; margin-top: 35px; border-color: var(--encap-line); }
.catalog-note p { color: #647265; line-height: 1.9; }
.approach-grid { grid-template-columns: .83fr 1.17fr; gap: clamp(48px,8vw,115px); }
.approach-copy h2 { line-height: 1.13; }
.approach-copy > p { font-size: 13px; line-height: 2; }
.approach-list { border-top-color: #d7dfd0; }
.approach-item { grid-template-columns: 48px 1fr; gap: 18px; padding: 25px 0; border-bottom-color: #d7dfd0; }
.approach-num { color: #7b9466; font-size: 27px; }
.approach-item h3 { font-size: 14px; }
.approach-item p { max-width: 550px; line-height: 1.9; }
.dark-feature { padding: clamp(34px,5.5vw,72px); background: var(--encap-forest); }
.dark-feature:after { width: 430px; height: 430px; border-color: rgba(239,200,90,.2); }
.dark-feature h2 { max-width: 760px; font-size: clamp(38px,4.8vw,62px); }
[lang="ar"] .dark-feature h2 { line-height: 1.45; }
.dark-feature p { max-width: 660px; font-size: 13px; line-height: 2; }
.cta { background: #f4e9bf; border: 1px solid #eadca8; }
.cta h2 { max-width: 700px; }
.footer { padding-top: 70px; background: #0b291e; }
.footer-top { gap: clamp(32px,5vw,75px); }
.footer-intro { line-height: 2; }
.footer-links { gap: 12px; }
.footer-links a { transition: color .18s; }
.footer-bottom { margin-top: 6px; padding-top: 22px; }
.page-head { padding: clamp(49px,6vw,78px) 0 clamp(51px,6vw,82px); background: var(--encap-cream); }
.page-head:after { width: 460px; height: 460px; border-color: rgba(16,47,35,.12); }
.page-head h1 { font-size: clamp(42px,5.2vw,68px); line-height: 1.08; font-weight: 500; }
[lang="ar"] .page-head h1 { font-size: clamp(34px,4vw,51px); line-height: 1.5; }
.page-head .lead { font-size: 14px; line-height: 2; }
.breadcrumbs { letter-spacing: .015em; }
.page-aside-note { border-inline-start: 2px solid #cfb550; padding-inline-start: 20px; font-size: 12px; line-height: 2; }
.content-layout { gap: clamp(35px,7vw,85px); }
.content-copy { color: #435447; font-size: 15px; line-height: 2.1; }
.feature-panel { background: #edf0e4; border: 1px solid #e0e6d8; }
.product-detail { gap: clamp(35px,6vw,85px); padding-block: clamp(48px,6vw,80px); }
.product-gallery-main { overflow: hidden; border-radius: 4px 54px 4px 4px; background: #e9ecde; box-shadow: 0 18px 45px rgba(16,47,35,.08); }
.product-gallery-main img { object-fit: cover; }
.product-visual { background: radial-gradient(ellipse at 70% 35%,#b1c69a 0%,transparent 35%), linear-gradient(135deg,#e8ecd9,#9caf82 55%,#426746); }
.product-gallery-thumbs { gap: 12px; margin-top: 12px; }
.product-gallery-thumb { min-width: 0; padding: 0; overflow: hidden; border: 1px solid #dce4d5; background: var(--encap-paper); cursor: pointer; opacity: .82; transition: opacity .2s, border-color .2s, transform .2s; }
.product-gallery-thumb:hover { opacity: 1; transform: translateY(-2px); }
.product-gallery-thumb[aria-pressed="true"] { opacity: 1; border: 2px solid #b39b46; }
.product-gallery-thumb img { width: 100%; height: 105px; object-fit: cover; }
.product-detail-copy h2 { font-size: clamp(32px,3.7vw,46px); line-height: 1.15; }
.product-detail-copy > p { line-height: 2; }
.detail-block { border-color: var(--encap-line); }
.form-card { border-color: var(--encap-line); border-radius: 4px; box-shadow: 0 20px 58px rgba(16,47,35,.06); }
.form-card h2 { line-height: 1.25; }
.field input, .field select, .field textarea { border-radius: 3px; background: #fdfcf8; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: #849a6b; box-shadow: 0 0 0 3px rgba(120,148,91,.16); }
.contact-details { border-radius: 4px; background: var(--encap-forest); }
.contact-details h2 { line-height: 1.35; }
.notice { border-radius: 3px; }
.pagination a, .pagination span { border-radius: 3px; }
@media (max-width: 1000px) {
    .hero-shell { grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); gap: 28px; min-height: 580px; }
    .hero-media { min-height: 510px; }
    .hero-float-card { inset-inline-start: -12px; width: min(290px,calc(100% - 12px)); }
    .editorial-intro-grid { grid-template-columns: .45fr 1.1fr .85fr; gap: 24px; }
    .category-image { height: 225px; }
}
@media (max-width: 800px) {
    .hero-shell { grid-template-columns: 1fr; gap: 8px; min-height: 0; padding-block: 0 21px; }
    .hero-copy { padding: 54px 0 28px; }
    .hero h1 { max-width: 650px; font-size: clamp(48px,8.6vw,72px); }
    [lang="ar"] .hero h1 { font-size: clamp(37px,7vw,54px); }
    .hero-media { min-height: clamp(330px,65vw,475px); border-radius: 4px 48px 4px 4px; }
    .hero-float-card { top: 18%; inset-inline-start: 15px; width: min(310px,calc(100% - 30px)); }
    .editorial-intro-grid { grid-template-columns: .35fr 1fr; gap: 22px 28px; }
    .editorial-summary { grid-column: 2; padding-top: 0; }
    .editorial-side-label { grid-row: span 2; }
    .approach-grid { gap: 40px; }
    .approach-copy { position: static; }
    .category-image { height: clamp(220px,34vw,280px); }
    .page-intro-grid { grid-template-columns: 1fr; gap: 20px; }
    .page-aside-note { max-width: 650px; }
    .product-detail { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 560px) {
    .brand-mark { width: 35px; height: 35px; }
    .brand-word strong { font-size: 20px; }
    .hero-shell { width: calc(100% - 30px); }
    .hero-copy { padding: 45px 0 25px; }
    .hero h1 { margin: 18px 0 17px; font-size: clamp(42px,11vw,56px); line-height: 1.04; }
    [lang="ar"] .hero h1 { font-size: clamp(34px,9vw,44px); line-height: 1.5; }
    .hero-copy > p { font-size: 13px; line-height: 1.95; }
    .hero-actions { width: 100%; gap: 9px; }
    .hero-actions .button { flex: 1 1 auto; padding-inline: 12px; font-size: 11px; }
    .hero-meta { margin-top: 23px; font-size: 8px; }
    .hero-media { min-height: 285px; border-radius: 3px 35px 3px 3px; }
    .hero-index { top: 13px; inset-inline-end: 13px; padding: 7px 9px; font-size: 8px; }
    .hero-float-card { top: 15%; inset-inline-start: 10px; gap: 9px; width: min(260px,calc(100% - 20px)); padding: 10px; }
    .hero-float-mark { width: 32px; height: 32px; font-size: 20px; }
    .hero-float-copy strong { font-size: 10px; }
    .hero-float-copy small { font-size: 8px; }
    .hero-caption { inset-inline-start: 15px; inset-inline-end: 15px; bottom: 15px; }
    .hero-caption strong { font-size: 21px; }
    .hero-caption span { font-size: 8px; }
    .hero-caption-mark { width: 41px; height: 41px; }
    .proof-item { gap: 9px; }
    .proof-number { font-size: 24px; }
    .proof-copy strong { font-size: 9px; }
    .proof-copy span { font-size: 8px; }
    .editorial-intro { padding: 55px 0; }
    .editorial-intro-grid { grid-template-columns: 1fr; gap: 19px; }
    .editorial-side-label { grid-row: auto; flex-direction: row; justify-content: space-between; padding-bottom: 12px; border-bottom: 1px solid #d7ddcc; }
    .editorial-heading h2 { margin-top: 10px; font-size: 35px; }
    [lang="ar"] .editorial-heading h2 { font-size: 28px; line-height: 1.55; }
    .editorial-summary { grid-column: auto; }
    .section { padding: 55px 0; }
    .section-head { align-items: flex-start; margin-bottom: 25px; }
    .section h2, .page-head h1 { font-size: 35px; }
    [lang="ar"] .section h2 { font-size: 27px; }
    .grid { grid-template-columns: 1fr; gap: 15px; }
    .category-image { height: 245px; }
    .category-body { padding: 20px; }
    .category h3 { font-size: 24px; }
    .catalog-note { align-items: flex-start; flex-direction: column; }
    .catalog-note .button { width: 100%; }
    .approach-item { grid-template-columns: 38px 1fr; }
    .dark-feature { padding: 30px 21px; }
    .dark-feature h2 { font-size: 34px; }
    [lang="ar"] .dark-feature h2 { font-size: 27px; }
    .cta { align-items: flex-start; flex-direction: column; }
    .cta > .button { width: 100%; }
    .page-head { padding: 42px 0 46px; }
    .page-head .lead { font-size: 13px; }
    .product-detail { padding: 38px 0 50px; }
    .product-gallery-main, .product-gallery-main img, .product-visual { min-height: 280px; }
    .product-gallery-thumbs { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .product-gallery-thumb img { height: 75px; }
    .form-layout { gap: 22px; }
    .form-card { padding: 21px 16px; }
    .form-grid { grid-template-columns: 1fr; }
    .field.full { grid-column: auto; }
    .contact-details { padding: 23px 19px; }
}
@media (prefers-reduced-motion: reduce) {
    .category, .category-image img, .product-gallery-thumb { transition: none !important; }
}

/* Phase 2 — catalogue, gallery, and product information refinement. */
.product-catalog-grid .category-image { height: clamp(235px,25vw,310px); }
.category-image-open { position:absolute; z-index:2; inset-inline-end:18px; bottom:18px; display:grid; place-items:center; width:38px; height:38px; border:1px solid rgba(255,255,255,.75); background:rgba(251,250,246,.94); color:var(--encap-forest); font-size:19px; opacity:0; transform:translateY(5px); transition:opacity .2s,transform .2s; }
.category:hover .category-image-open, .category:focus-visible .category-image-open { opacity:1; transform:translateY(0); }
.product-catalog-grid .category-body { min-height:165px; display:flex; flex-direction:column; align-items:flex-start; }
.product-catalog-grid .category-body .arrow { margin-top:auto; padding-top:18px; }
.product-catalog-grid .category-body .arrow span { display:inline-block; margin-inline-start:7px; transition:transform .18s; }
[dir="rtl"] .product-catalog-grid .category:hover .arrow span { transform:translateX(-3px); }
.format-pills { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 4px; }
.format-pill { display:inline-flex; align-items:center; min-height:32px; padding:6px 12px; border:1px solid #d8e0d1; background:#f5f7ef; color:#244b35; font-size:11px; font-weight:750; }
.detail-block { padding:19px 0; }
.detail-block h3 { margin:0 0 8px; font-size:12px; font-weight:800; }
.product-gallery-thumb:focus-visible, .gallery-card-link:focus-visible { outline:3px solid var(--encap-citrus); outline-offset:3px; }
.gallery-card { overflow:hidden; border:1px solid #e0e5d9; background:#fff; transition:border-color .22s,box-shadow .22s,transform .22s; }
.gallery-card:hover { transform:translateY(-4px); border-color:#afc3a3; box-shadow:0 18px 40px rgba(16,47,35,.08); }
.gallery-card-link { position:relative; display:block; overflow:hidden; background:#e8ecdf; }
.gallery-card-link img { display:block; width:100%; height:clamp(205px,23vw,290px); object-fit:cover; transition:transform .55s cubic-bezier(.2,.7,.2,1); }
.gallery-card:hover .gallery-card-link img { transform:scale(1.045); }
.gallery-card-action { position:absolute; inset-inline-end:14px; bottom:14px; display:grid; place-items:center; width:36px; height:36px; background:rgba(251,250,246,.95); color:#103526; font-size:18px; }
.gallery-card figcaption { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 16px; border-top:1px solid #edf0e8; font-size:13px; font-weight:800; }
.gallery-card figcaption small { color:#7a8979; font-size:9px; font-weight:650; white-space:nowrap; }
.content-story-marker { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:0 0 24px; padding-bottom:16px; border-bottom:1px solid var(--encap-line); color:#728170; font-size:9px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.content-story-marker span:first-child { color:var(--encap-forest); }
.content-copy p { max-width:790px; }
.contact-details { position:sticky; top:115px; align-self:start; }
.form-card { scroll-margin-top:110px; }
@media (max-width:800px) { .product-catalog-grid .category-image { height:clamp(220px,38vw,300px); } .contact-details { position:static; } }
@media (max-width:560px) {
  .product-catalog-grid .category-image { height:245px; }
  .product-catalog-grid .category-body { min-height:0; }
  .category-image span.category-image-open { opacity:1; transform:none; }
  .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
  .gallery-card-link img { height:clamp(130px,44vw,210px); }
  .gallery-card figcaption { align-items:flex-start; flex-direction:column; gap:4px; padding:11px; font-size:11px; }
  .content-story-marker { align-items:flex-start; flex-direction:column; gap:6px; }
}
/* Ensure the decorative card arrow overrides the generic image-caption span rule. */
.category-image span.category-image-open { position:absolute; z-index:2; padding:0; text-align:center; }


/* Interactive visual layer — lightweight CSS 3D, no WebGL runtime. */
.hero-3d-scene { position:absolute; z-index:2; top:19%; inset-inline-end:7%; width:clamp(175px,24vw,286px); aspect-ratio:1; perspective:1000px; transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0); transform-style:preserve-3d; pointer-events:none; }
.hero-3d-orbit { position:absolute; border:1px solid rgba(231,243,212,.56); border-radius:50%; transform-style:preserve-3d; }
.hero-3d-orbit--outer { inset:2%; transform:rotateX(64deg) rotateZ(-24deg); box-shadow:0 0 26px rgba(239,200,90,.08); }
.hero-3d-orbit--inner { inset:13%; border-color:rgba(239,200,90,.58); transform:rotateX(68deg) rotateZ(34deg); }
.hero-3d-globe { position:absolute; top:21%; left:22%; width:58%; aspect-ratio:1; overflow:hidden; border:1px solid rgba(255,255,255,.62); border-radius:50%; background:radial-gradient(circle at 31% 26%,#f7f9d8 0,#bdd68d 12%,#66895a 38%,#27513b 67%,#102f23 100%); box-shadow:inset -19px -13px 30px rgba(5,24,15,.5),inset 6px 5px 17px rgba(255,255,255,.35),0 22px 38px rgba(5,26,17,.38); transform:translateZ(28px); animation:encap-globe-float 7s ease-in-out infinite; }
.hero-3d-globe:before { content:""; position:absolute; inset:12% 14%; background:rgba(225,238,169,.55); clip-path:polygon(12% 14%,27% 3%,40% 13%,38% 27%,52% 34%,48% 48%,37% 55%,34% 74%,24% 82%,19% 66%,10% 51%,4% 34%); filter:drop-shadow(0 1px 1px rgba(6,27,16,.28)); }
.hero-3d-globe:after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.35); border-radius:50%; transform:rotateY(66deg); }
.hero-3d-globe-line { position:absolute; z-index:1; inset:0; border:1px solid rgba(237,246,214,.34); border-radius:50%; }
.hero-3d-globe-line--one { transform:rotateY(28deg); }
.hero-3d-globe-line--two { transform:rotateY(53deg); }
.hero-3d-node { position:absolute; z-index:4; display:grid; place-items:center; width:clamp(37px,4.2vw,49px); aspect-ratio:1; border:1px solid rgba(255,255,255,.7); border-radius:14px 5px 14px 5px; background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(237,242,222,.88)); color:var(--encap-forest); box-shadow:0 13px 27px rgba(4,24,15,.28),inset 0 1px 0 rgba(255,255,255,.95); backdrop-filter:blur(10px); transform-style:preserve-3d; }
.hero-3d-node svg { width:52%; height:52%; stroke:currentColor; }
.hero-3d-node--sprout { top:11%; inset-inline-start:9%; transform:translateZ(65px) rotate(-9deg); animation:encap-node-float 5.7s ease-in-out infinite; }
.hero-3d-node--quality { top:39%; inset-inline-end:-1%; transform:translateZ(76px) rotate(8deg); animation:encap-node-float 6.3s ease-in-out -1.1s infinite; }
.hero-3d-node--global { bottom:9%; inset-inline-start:24%; transform:translateZ(55px) rotate(-5deg); animation:encap-node-float 6s ease-in-out -2s infinite; }
@keyframes encap-globe-float { 0%,100% { transform:translateY(0) translateZ(28px) rotate(-4deg); } 50% { transform:translateY(-9px) translateZ(28px) rotate(3deg); } }
@keyframes encap-node-float { 0%,100% { margin-top:0; } 50% { margin-top:-7px; } }
.proof-item { gap:9px; }
.proof-icon { display:grid; place-items:center; flex:0 0 auto; width:31px; height:31px; border:1px solid #d5decf; border-radius:50%; background:#fffdf6; color:var(--encap-forest); }
.proof-icon svg { display:block; width:16px; height:16px; }
.proof-number { font-size:22px; }
.approach-item { grid-template-columns:32px 38px minmax(0,1fr); align-items:start; }
.approach-icon { display:grid; place-items:center; width:34px; height:34px; margin-top:1px; border:1px solid #dbe3d5; border-radius:50%; color:var(--encap-forest); background:#fbfaf6; }
.approach-icon svg { display:block; width:17px; height:17px; }
.category[data-tilt] { position:relative; transform-style:preserve-3d; transition:transform .18s ease,border-color .2s,box-shadow .2s; }
.category[data-tilt]:hover { transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-4px); }
.category[data-tilt]:before { content:""; position:absolute; z-index:4; inset:0; pointer-events:none; opacity:0; background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(255,255,255,.17),transparent 50%); transition:opacity .2s; }
.category[data-tilt]:hover:before { opacity:1; }
@media (max-width:800px) {
  .hero-3d-scene { width:clamp(145px,29vw,205px); top:13%; inset-inline-end:4%; }
  .hero-3d-node { width:37px; border-radius:11px 4px 11px 4px; }
  .proof-item { gap:7px; }
  .proof-icon { width:27px; height:27px; }
  .proof-number { font-size:19px; }
  .approach-item { grid-template-columns:30px 34px minmax(0,1fr); gap:12px; }
  .approach-icon { width:31px; height:31px; }
}
@media (max-width:560px) {
  .hero-3d-scene { width:142px; top:5%; inset-inline-end:2%; opacity:.97; }
  .hero-3d-globe { top:23%; left:21%; width:58%; }
  .hero-3d-node { width:32px; }
  .hero-3d-node--quality { top:38%; inset-inline-end:0; }
  .hero-3d-node--global { bottom:10%; inset-inline-start:23%; }
  .hero-float-card { top:25%; width:min(245px,calc(100% - 18px)); padding:10px 11px; gap:8px; }
  .hero-float-mark { width:31px; height:31px; font-size:19px; }
  .hero-float-copy strong { font-size:10px; }
  .hero-float-copy small { font-size:8px; }
  .hero-float-arrow { width:24px; height:24px; }
  .proof-item { gap:6px; padding-inline:7px; }
  .proof-icon { width:24px; height:24px; }
  .proof-icon svg { width:13px; height:13px; }
  .proof-number { font-size:17px; }
}
@media (hover:none),(pointer:coarse) {
  .category[data-tilt] { transform:none; }
  .category[data-tilt]:before { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-3d-globe,.hero-3d-node { animation:none !important; }
  .hero-3d-scene,.category[data-tilt] { transform:none !important; transition:none !important; }
}

.gallery-card[data-tilt] { transform-style:preserve-3d; transition:transform .18s ease,border-color .22s,box-shadow .22s; }
.gallery-card[data-tilt]:hover { transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-4px); border-color:#afc3a3; box-shadow:0 18px 40px rgba(16,47,35,.08); }
.gallery-card[data-tilt]:before { content:""; position:absolute; z-index:3; inset:0; pointer-events:none; opacity:0; background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(255,255,255,.16),transparent 48%); transition:opacity .2s; }
.gallery-card[data-tilt]:hover:before { opacity:1; }
.detail-heading { display:flex; align-items:center; gap:9px; }
.detail-heading svg { display:block; flex:0 0 auto; width:17px; height:17px; color:var(--encap-forest); }
@media (hover:none),(pointer:coarse) { .gallery-card[data-tilt] { transform:none; } .gallery-card[data-tilt]:before { display:none; } }
@media (prefers-reduced-motion:reduce) { .gallery-card[data-tilt] { transform:none !important; transition:none !important; } }


/* Art direction pass: richer hover states, depth and light response. */
:root { --encap-forest:var(--forest); --encap-glow:rgba(213,231,171,.22); }
.hero { position:relative; isolation:isolate; }
.hero:before { content:""; position:absolute; z-index:-1; top:0; inset-inline:0; height:76%; pointer-events:none; background:radial-gradient(ellipse at 8% 12%,rgba(223,230,196,.55),transparent 42%),linear-gradient(125deg,#f7f6ef 0%,#fff 54%,#eef2e6 100%); }
.hero-copy { position:relative; z-index:3; }
.hero-copy h1 { text-wrap:balance; }
.hero-copy h1:after { content:""; display:block; width:clamp(64px,8vw,112px); height:3px; margin-top:24px; background:linear-gradient(90deg,var(--gold),#a7bb87); transform-origin:left; animation:encap-rule-in .9s .18s both cubic-bezier(.2,.7,.2,1); }
@keyframes encap-rule-in { from { transform:scaleX(0); opacity:.3; } to { transform:scaleX(1); opacity:1; } }
.hero-media { isolation:isolate; border-radius:2px 42px 2px 2px; box-shadow:0 28px 70px rgba(14,44,29,.2); }
.hero-media:after { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(125deg,rgba(255,255,255,.14),transparent 26%,transparent 72%,rgba(7,28,18,.15)); mix-blend-mode:screen; }
.hero-media img { transition:transform 1.2s cubic-bezier(.2,.65,.2,1),filter .7s ease; will-change:transform; }
.hero-media:hover img { transform:scale(1.045); filter:saturate(1.08) contrast(1.025); }
.hero-3d-scene { filter:drop-shadow(0 14px 26px rgba(9,34,22,.2)); }
.hero-3d-orbit--outer { animation:encap-orbit-turn 24s linear infinite; }
.hero-3d-orbit--inner { animation:encap-orbit-turn 17s linear infinite reverse; }
.hero-3d-globe { border-color:rgba(255,255,255,.8); }
.hero-3d-node { transition:box-shadow .3s ease,filter .3s ease; }
.hero-media:hover .hero-3d-node { box-shadow:0 17px 34px rgba(4,24,15,.34),0 0 26px rgba(239,200,90,.2),inset 0 1px 0 rgba(255,255,255,.95); filter:brightness(1.035); }
@keyframes encap-orbit-turn { from { rotate:0deg; } to { rotate:360deg; } }
.hero-float-card { border:1px solid rgba(255,255,255,.78); box-shadow:0 22px 60px rgba(7,29,18,.22),0 3px 10px rgba(7,29,18,.06); backdrop-filter:blur(18px) saturate(1.2); transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease; }
.hero-media:hover .hero-float-card { transform:translateY(-5px) rotate(-.4deg); box-shadow:0 28px 65px rgba(7,29,18,.27); }
.button { position:relative; overflow:hidden; isolation:isolate; transition:transform .24s cubic-bezier(.2,.7,.2,1),box-shadow .24s ease,color .24s ease,background .24s ease,border-color .24s ease; }
.button:before { content:""; position:absolute; z-index:-1; inset:-40% auto -40% -55%; width:36%; transform:skewX(-20deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent); transition:left .65s cubic-bezier(.2,.7,.2,1); }
.button:hover:before { left:130%; }
.button:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(16,47,35,.16); }
.button:active { transform:translateY(-1px) scale(.99); }
.button-arrow { display:inline-grid; place-items:center; transition:transform .24s ease; }
.button:hover .button-arrow { transform:translate(3px,-3px); }
.category { position:relative; overflow:hidden; border-radius:2px 20px 2px 2px; }
.category-image img { transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .45s ease; }
.category:hover .category-image img { transform:scale(1.075); filter:saturate(1.12); }
.category-image:after { content:""; position:absolute; inset:0; pointer-events:none; opacity:0; background:linear-gradient(130deg,rgba(255,255,255,.23),transparent 45%,rgba(19,55,36,.12)); transition:opacity .3s ease; }
.category:hover .category-image:after { opacity:1; }
.category .category-title { transition:transform .3s ease,color .3s ease; }
.category:hover .category-title { transform:translateX(4px); color:var(--forest2); }
.category[data-tilt]:hover { box-shadow:0 24px 52px rgba(13,47,31,.16); }
.proof-item { transition:background .28s ease,transform .28s ease; }
.proof-item:hover { background:rgba(255,255,255,.72); transform:translateY(-2px); }
.proof-icon { transition:transform .35s cubic-bezier(.2,.7,.2,1),background .25s ease,box-shadow .25s ease; }
.proof-item:hover .proof-icon { transform:rotate(-9deg) scale(1.08); background:#fff; box-shadow:0 5px 15px rgba(23,55,37,.1); }
.approach-item { transition:transform .3s ease; }
.approach-item:hover { transform:translateX(5px); }
.approach-icon { transition:transform .35s ease,background .25s ease,box-shadow .25s ease; }
.approach-item:hover .approach-icon { transform:rotate(8deg) scale(1.08); background:#fff; box-shadow:0 6px 18px rgba(23,55,37,.1); }
.text-link span { transition:transform .25s ease,background .25s ease,box-shadow .25s ease; }
.text-link:hover span { transform:translate(3px,-2px); box-shadow:0 5px 14px rgba(23,55,37,.1); }
.gallery-card { overflow:hidden; border-radius:2px 18px 2px 2px; }
.gallery-card img { transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .45s ease; }
.gallery-card:hover img { transform:scale(1.055); filter:saturate(1.08); }
.product-gallery-main img { transition:transform .75s cubic-bezier(.2,.65,.2,1),opacity .25s ease; }
.product-gallery-main:hover img { transform:scale(1.035); }
.site-footer a { transition:color .2s ease,transform .2s ease; }
.site-footer a:hover { color:var(--gold); transform:translateX(3px); }
@media (prefers-reduced-motion:reduce) {
  .hero-3d-orbit--outer,.hero-3d-orbit--inner,.hero-copy h1:after { animation:none !important; }
  .hero-media img,.hero-float-card,.button,.category,.category-image img,.proof-item,.proof-icon,.approach-item,.approach-icon,.gallery-card img,.product-gallery-main img { transition:none !important; }
}
@media (max-width:800px) {
  .hero-media { border-top-right-radius:28px; }
  .hero-media:hover img { transform:none; }
}
