.portfolio-section{padding:2rem 2rem 4rem;background:linear-gradient(180deg,var(--green-800) 0%,var(--green-900) 22%,var(--green-900) 78%,var(--green-800) 100%);position:relative}.portfolio-inner{max-width:1200px;margin:0 auto}.portfolio-head{text-align:center;margin-bottom:1.75rem}.portfolio-eyebrow{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--green-500);margin-bottom:.75rem}.portfolio-head h2{font-size:clamp(26px,4vw,38px);font-weight:800;color:var(--text-primary);line-height:1.1;margin-bottom:.6rem}.portfolio-head h2 span{color:var(--green-500)}.portfolio-head p{color:#ccdaa4cc;font-size:.95rem;line-height:1.65;max-width:560px;margin:0 auto}.portfolio-head .hero-accent{margin-top:1rem}.pf-stage{display:flex;justify-content:center}.pf-book-wrap{position:relative;width:100%;max-width:min(860px,calc((100vh - 200px) * 1588 / 1123));aspect-ratio:1588 / 1123}.pf-book{width:100%;height:100%;margin:0 auto;touch-action:pan-y pinch-zoom}.pf-book-wrap{transform-origin:50% 50%}.pf-book-wrap.is-zoom-animating{transition:transform .22s cubic-bezier(.4,0,.2,1)}.pf-page{background:#0a170f;overflow:hidden}.pf-page img{width:100%;height:100%;display:block;object-fit:cover;user-select:none}.pf-book .stf__item{box-shadow:0 18px 50px #00000073}.pf-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;color:#e6f4eabf;font-size:.9rem;background:#05190f80;border:1px solid rgba(255,255,255,.08);border-radius:12px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pf-loading span{width:16px;height:16px;border:2px solid rgba(107,200,90,.3);border-top-color:var(--green-500);border-radius:50%;animation:pf-spin .8s linear infinite}@keyframes pf-spin{to{transform:rotate(360deg)}}.pf-loading.is-done{opacity:0;pointer-events:none;transition:opacity .4s ease}.pf-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}.pf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0 14px;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;color:#e6f4ead9;background:#05190f80;border:1px solid rgba(255,255,255,.12);border-radius:10px;cursor:pointer;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1)}.pf-btn:hover:not(:disabled){border-color:#6bc85a73;color:var(--text-primary);transform:translateY(-2px)}.pf-btn:disabled{opacity:.35;cursor:default}.pf-btn-primary{background:var(--btn-primary-gradient);color:#0a1f17;border-color:transparent}.pf-btn-primary:hover{background:var(--btn-primary-hover-gradient);color:#0a1f17}.pf-counter{min-width:92px;text-align:center;font-size:.85rem;font-weight:600;color:#ccdaa4d9;font-variant-numeric:tabular-nums}.pf-jump{height:44px;padding:0 14px;max-width:240px;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;color:#e6f4ead9;background:#05190f80;border:1px solid rgba(255,255,255,.12);border-radius:10px;cursor:pointer}.pf-jump option{background:#0a1f17;color:#e6f4ea}.pf-hint{text-align:center;margin-top:1rem;font-size:.78rem;color:#ccdaa480}.pf-zoom{display:inline-flex;align-items:center;gap:4px}.pf-zoom .pf-btn{min-width:40px;padding:0 10px}.pf-zoom-level{min-width:68px;font-variant-numeric:tabular-nums}.pf-shell.is-zoomed .pf-stage{overflow:hidden;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.pf-shell.is-zoomed .pf-stage.is-panning{cursor:grabbing}.pf-shell.is-zoomed .pf-book{pointer-events:none}.pf-shell.is-immersive{position:fixed;inset:0;z-index:900;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2.5vh 2vw;background:#05170f}.pf-shell.is-immersive .pf-book-wrap{max-width:min(1500px,96vw);height:min(88vh,calc((96vw) * 1123 / 1588));width:auto;aspect-ratio:1588 / 1123}.pf-shell.is-immersive .pf-controls{margin-top:0}body.pf-immersive-lock{overflow:hidden}@media (max-width: 900px){.pf-shell.is-immersive .pf-book-wrap{aspect-ratio:794 / 1123;height:min(82vh,calc(96vw * 1123 / 794))}}@media (max-width: 900px){.portfolio-section{padding:1.5rem 1rem 3rem}.pf-book-wrap{aspect-ratio:794 / 1123;max-width:min(460px,calc((100svh - 190px) * 794 / 1123))}.pf-jump{max-width:100%;order:5;flex-basis:100%;font-size:16px}}.rail{width:220px;flex:none;position:sticky;top:96px;align-self:start}.rail-group+.rail-group{margin-top:1.5rem}.rail-group-label{font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ccdaa480;padding:0 10px .5rem}.rail-list{list-style:none}.rail-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:8px;font-family:Inter,sans-serif;font-size:.82rem;font-weight:500;line-height:1.3;color:#e6f4eab8;text-decoration:none;border-left:2px solid transparent;transition:color .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1)}.rail-link:hover{color:var(--text-primary);background:#6bc85a14}.rail-link.is-current{color:var(--green-500);background:#6bc85a1a;border-left-color:var(--green-500);font-weight:600}.rail-count{flex:none;font-size:.7rem;font-variant-numeric:tabular-nums;color:#ccdaa473}.rail-link.is-current .rail-count{color:var(--green-600)}@media (max-width: 900px){.rail{position:static;width:auto;display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem;margin-bottom:1.75rem;scrollbar-width:none;-ms-overflow-style:none}.rail::-webkit-scrollbar{display:none}.rail-group{display:contents}.rail-group+.rail-group{margin-top:0}.rail-group-label{display:none}.rail-list{display:flex;gap:.5rem}.rail-link{white-space:nowrap;border-left:none;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:8px 14px;background:#05190f80}.rail-link.is-current{border-color:transparent;background:var(--btn-primary-gradient);color:#0a1f17}.rail-link.is-current .rail-count{color:#0a1f17b3}}.page-hero{padding:160px 2rem 40px;background:var(--page-hero-gradient);text-align:center;position:relative;overflow:hidden}.page-hero-particles{position:absolute;inset:0;pointer-events:none}.page-hero h1{font-size:clamp(40px,7vw,72px);font-weight:800;color:#fff;margin-bottom:.5rem;line-height:1.1}.page-hero h1 span{color:var(--green-500)}.page-hero p{font-size:clamp(16px,2.5vw,20px);color:#ccdaa4d9;max-width:640px;margin:0 auto;line-height:1.7}.hero-accent{width:60px;height:3px;background:linear-gradient(90deg,transparent,rgba(107,200,90,.6),transparent);margin:1.5rem auto 0;border-radius:2px}.product-card{position:relative;background:#05190f8c;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 28px #00000047,inset 0 0 40px #8bc34a1f;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d;border-color:#6bc85a4d}.product-card-media{width:100%;height:96px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.product-card-placeholder{width:100%;height:100%;border-radius:10px;background:linear-gradient(135deg,var(--green-900) 0%,var(--green-800) 100%);border:1px solid rgba(107,200,90,.15)}.product-card-cover{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;padding:0 12px;background:linear-gradient(135deg,var(--green-900) 0%,var(--green-800) 100%)}.product-card-placeholder-brand{color:var(--green-400);font-family:Inter,sans-serif;font-weight:600;font-size:1rem;letter-spacing:.5px}.product-card-placeholder-name{color:#e6f4ea99;font-family:Inter,sans-serif;font-weight:500;font-size:.68rem}.product-card-photo{position:absolute;inset:0;z-index:0;isolation:isolate;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 40%,#fff,#eef4ec 70%,#dfe9dc)}.product-card-photo img{height:88%;width:auto;max-width:92%;object-fit:contain;mix-blend-mode:multiply;transform:scale(.94);transition:transform .9s cubic-bezier(.22,.61,.36,1) .05s}.has-photo .product-card-cover{clip-path:inset(0 0 0 0);transition:clip-path .7s ease-out .05s}.product-card-placeholder:before{z-index:2}.product-card:hover .has-photo .product-card-cover,.product-card:focus-within .has-photo .product-card-cover,.product-card.is-revealed .has-photo .product-card-cover{clip-path:inset(0 0 0 100%)}.product-card:hover .product-card-photo img,.product-card:focus-within .product-card-photo img,.product-card.is-revealed .product-card-photo img{transform:scale(1)}.product-card.is-revealed .shine-sweep:before{transform:translate(220%)}@media (prefers-reduced-motion: reduce){.has-photo .product-card-cover,.product-card-photo img{transition:none}}.product-card-category{font-size:.62rem;font-weight:600;color:var(--green-500);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.4rem}.product-card-title{font-size:1.05rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}.product-card-title a{color:var(--text-primary);text-decoration:none;transition:color .2s}.product-card-title a:hover{color:var(--green-500)}.product-card-title a:after{content:"";position:absolute;inset:0}.tag-quote{align-self:flex-start;margin-bottom:.55rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);background:#ccdaa41a;border:1px solid rgba(204,218,164,.25);border-radius:20px;padding:3px 9px}.product-card-hook{font-size:.84rem;color:#ccdaa4bf;line-height:1.55;margin-bottom:1.1rem;flex:1}.product-card-actions{display:flex;flex-direction:column;gap:.55rem;position:relative;z-index:1}.product-card-enquiry-btn{width:100%;justify-content:center}a.product-card-enquiry-btn{text-decoration:none}.size-static{display:flex;align-items:center;background-image:none;cursor:default}.products-section{padding:4rem 2rem 5rem;background:linear-gradient(180deg,var(--green-800) 0%,var(--green-900) 8%,var(--green-900) 92%,var(--green-800) 97%,var(--sage) 100%)}.products-inner{max-width:1200px;margin:0 auto}.pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.sys-anchor{grid-column:1 / -1;margin-top:96px;margin-bottom:32px;padding-bottom:.85rem;border-bottom:1px solid rgba(255,255,255,.14);scroll-margin-top:96px}.sys-anchor.is-first{margin-top:0}.sys-anchor-head{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.sys-anchor-num{font-size:.9rem;font-weight:800;color:var(--green-500);font-variant-numeric:tabular-nums}.sys-anchor h2{font-size:clamp(17px,2.2vw,20px);font-weight:700;color:var(--text-primary)}.sys-anchor-count{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ccdaa480}.sys-anchor p{margin-top:.4rem;font-size:.86rem;line-height:1.55;color:#ccdaa4b3;max-width:640px}.sys-anchor.is-hidden,.product-card.is-hidden{display:none}.pl-empty{display:none;text-align:center;padding:4rem 1rem;color:#e6f4eab3}.pl-empty.is-visible{display:block}.switch-cta{margin:5rem auto 0;max-width:900px;background:#05190f80;border:1px solid rgba(107,200,90,.2);border-radius:20px;padding:3rem 2rem;text-align:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.switch-cta h2{font-size:clamp(24px,4vw,36px);font-weight:700;color:var(--text-primary);margin-bottom:1rem}.switch-cta p{color:#ccdaa4cc;font-size:1rem;line-height:1.6;margin-bottom:2rem}.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--btn-primary-gradient);color:#0a1f17;font-weight:600;font-size:1rem;padding:16px 36px;border-radius:10px;border:none;cursor:pointer;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{background:var(--btn-primary-hover-gradient);transform:translateY(-2px)}@media (max-width: 1100px){.pl-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.sys-anchor{margin-top:72px}}@media (max-width: 620px){.pl-grid{grid-template-columns:1fr}}.pl-controls{margin-bottom:2.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem}.pl-household{margin-left:auto;font-size:.9rem;color:#ccdaa4cc;text-decoration:none}.pl-household span{color:var(--green-400);font-weight:700}.pl-household:hover span{text-decoration:underline}.pl-search-wrap{position:relative;flex:1 1 280px;max-width:420px}@media (max-width: 620px){.pl-household{margin-left:0}}.pl-search{width:100%;height:46px;padding:0 14px 0 42px;font-family:Inter,sans-serif;font-size:.9rem;color:var(--text-primary);background:#05190f8c;border:1px solid rgba(255,255,255,.12);border-radius:10px;transition:border-color .2s cubic-bezier(.4,0,.2,1)}.pl-search::placeholder{color:#ccdaa473}.pl-search:focus{outline:none;border-color:#6bc85a80}.pl-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#ccdaa473;pointer-events:none}.pl-body{display:flex;gap:40px;align-items:flex-start}.pl-main{flex:1;min-width:0}@media (max-width: 900px){.pl-body{display:block}}@media (max-width: 768px){.pl-search{font-size:16px}}
