@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500&family=Italiana&display=swap');

:root { --forest:#15372e; --forest-deep:#0e2922; --ivory:#f6f3ed; --stone:#d9d4ca; --ink:#1d2a25; --muted:#6d746e; --line:rgba(21,55,46,.18); --display:'Italiana', serif; --body:'DM Sans', sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--ivory); font-family:var(--body); font-size:13px; line-height:1.55; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; } button { color:inherit; font:inherit; border:0; background:none; cursor:pointer; }
.announcement { height:33px; background:var(--forest-deep); color:#e7e1d7; display:flex; align-items:center; justify-content:center; gap:12px; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.announcement span { color:#9fae9c; }.announcement a { border-bottom:1px solid #87998b; padding-bottom:1px; }
.site-header { height:82px; padding:0 4.7vw; display:flex; align-items:center; justify-content:space-between; background:var(--ivory); position:relative; z-index:10; }
.wordmark { font-size:20px; letter-spacing:.18em; font-weight:500; }.wordmark-mark { font-size:7px; letter-spacing:0; vertical-align:top; margin-left:2px; }
.main-nav { display:flex; gap:38px; margin-left:115px; }.main-nav a, .text-link, .header-actions { font-size:11px; letter-spacing:.06em; }.main-nav a { color:#55625b; transition:color .3s; }.main-nav a:hover { color:var(--forest); }
.header-actions { display:flex; align-items:center; gap:24px; }.header-consult { color:var(--forest); }.header-consult span, .text-link span { margin-left:7px; font-size:14px; }.icon-button svg { width:17px; stroke:var(--forest); fill:none; stroke-width:1.3; }.menu-toggle { display:none; width:24px; padding:4px 0; }.menu-toggle span { display:block; height:1px; background:var(--forest); margin:5px 0; }
.hero { min-height:calc(100vh - 115px); position:relative; color:#f9f6ee; display:flex; align-items:center; overflow:hidden; }.hero-image, .hero-shade { position:absolute; inset:0; }.hero-image { background:url('https://images.unsplash.com/photo-1614594975525-e45190c55d0b?auto=format&fit=crop&w=2200&q=85') center 43%/cover; transform:scale(1.02); }.hero-shade { background:linear-gradient(90deg,rgba(9,27,22,.65),rgba(9,27,22,.15) 75%),linear-gradient(0deg,rgba(10,25,20,.35),transparent 50%); }.hero-content { position:relative; z-index:1; padding:8vh 10vw 11vh; }.eyebrow { text-transform:uppercase; letter-spacing:.18em; font-size:10px; color:#78827b; margin:0 0 24px; }.eyebrow.light { color:#ced9cf; }.eyebrow span { margin-left:30px; opacity:.7; }.hero h1 { font-family:var(--display); font-size:clamp(78px, 13.7vw, 198px); font-weight:400; letter-spacing:.035em; line-height:.87; margin:0 0 37px; }.hero-tagline { font-size:17px; line-height:1.45; margin:0 0 36px; letter-spacing:.015em; }.button { display:inline-flex; align-items:center; gap:29px; padding:16px 21px; text-transform:uppercase; letter-spacing:.12em; font-size:10px; transition:background .3s,color .3s,border .3s; }.button-light { background:var(--ivory); color:var(--forest); }.button-light:hover { background:var(--forest); color:var(--ivory); }.hero-foot { position:absolute; bottom:27px; left:4.7vw; right:4.7vw; display:flex; justify-content:space-between; align-items:center; font-size:9px; letter-spacing:.16em; text-transform:uppercase; color:#dae0d7; }.scroll-cue { display:flex; align-items:center; gap:12px; }.scroll-cue i { width:42px; height:1px; background:#ced9cf; display:block; }
.section-padding { padding:132px 8.2vw; }.section-marker { display:flex; gap:14px; align-items:center; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:#65726b; margin-bottom:82px; }.section-marker i { width:32px; height:1px; background:#758177; display:block; }.intro-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:11vw; margin-left:8vw; }.intro-title h2, h2 { font-family:var(--display); font-weight:400; font-size:clamp(58px,7.2vw,105px); line-height:.93; letter-spacing:-.025em; margin:0; }.intro-title h2 em, h2 em { font-style:normal; color:#829085; }.intro-copy { max-width:385px; padding-top:45px; font-size:16px; line-height:1.7; color:#4d5a52; }.intro-copy p { margin:0 0 23px; }.dark-link { display:inline-block; margin-top:18px; color:var(--forest); border-bottom:1px solid #9ba59d; padding-bottom:6px; }.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:52px; }.section-heading h2 { font-size:58px; margin-top:6px; }.plant-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.plant-image { height:34vw; max-height:510px; min-height:300px; background-size:cover; background-position:center; transition:transform .7s cubic-bezier(.2,.7,.2,1); }.plant-card { overflow:hidden; }.plant-card:hover .plant-image { transform:scale(1.035); }.plant-one { background-image:url('https://images.unsplash.com/photo-1509423350716-97f9360b4e09?auto=format&fit=crop&w=900&q=85'); }.plant-two { background-image:url('https://images.unsplash.com/photo-1614594575772-0db7a9c20cb5?auto=format&fit=crop&w=900&q=85'); background-position:55% center; }.plant-three { background-image:url('https://images.unsplash.com/photo-1614594975525-e45190c55d0b?auto=format&fit=crop&w=900&q=85'); background-position:42% center; }.plant-info { display:flex; justify-content:space-between; align-items:start; padding:18px 1px 0; }.plant-info h3, .care-card h3 { font-family:var(--display); font-weight:400; font-size:25px; margin:0 0 4px; }.plant-info p { font-size:10px; color:#737b74; margin:0; text-transform:uppercase; letter-spacing:.08em; }.round-arrow { border:1px solid #bac1ba; border-radius:100%; width:34px; height:34px; font-size:15px; transition:.3s; }.round-arrow:hover { background:var(--forest); color:var(--ivory); }.collection-note { border-top:1px solid var(--line); margin-top:93px; padding-top:16px; display:flex; gap:30px; color:#707a73; font-size:11px; }.collection-note span { color:var(--forest); }.collection-note p { margin:0; }
.split-section { display:grid; grid-template-columns:55% 45%; min-height:700px; }.split-image { min-height:600px; background-size:cover; background-position:center; }.vessel-image { background-image:url('https://images.unsplash.com/photo-1616762777219-c7f993a1a33e?auto=format&fit=crop&w=1400&q=85'); }.dark-panel { background:var(--forest); color:var(--ivory); padding:145px 11vw 60px; position:relative; }.dark-panel h2 { font-size:clamp(68px,8vw,115px); margin-bottom:35px; }.dark-panel > p:not(.eyebrow) { max-width:290px; color:#c5d0c7; line-height:1.7; margin-bottom:38px; }.button-outline-light { border:1px solid rgba(237,240,230,.6); }.button-outline-light:hover { background:var(--ivory); color:var(--forest); }.panel-index { position:absolute; bottom:38px; right:11vw; font-size:9px; letter-spacing:.14em; }.panel-index i { display:inline-block; width:35px; height:1px; background:#9bab9e; vertical-align:middle; margin:0 10px; }
.spaces { background:#ebe7de; }.heading-aside { color:#66736b; margin:0 7vw 3px 0; line-height:1.5; }.spaces-feature { display:grid; grid-template-columns:69% 31%; }.space-image { height:45vw; max-height:650px; min-height:420px; background:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1800&q=85') center/cover; }.space-caption { padding:27px 0 0 32px; }.space-caption span, .thumb span { font-size:9px; text-transform:uppercase; letter-spacing:.13em; color:#78827c; }.space-caption h3 { font-family:var(--display); font-size:45px; line-height:1; font-weight:400; margin:78px 0 42px; }.space-thumbs { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:20px 0 0; }.thumb { height:190px; background-size:cover; background-position:center; padding:15px; }.thumb span { color:#f3f0e9; text-shadow:0 1px 7px #333; }.thumb-two { background-image:url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=700&q=80'); }.thumb-three { background-image:url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=700&q=80'); }.thumb-four { background-image:url('https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=700&q=80'); }
.care { display:grid; grid-template-columns:34% 1fr; gap:12vw; }.care-header { padding-top:35px; }.care-header h2 { font-size:70px; margin-bottom:34px; }.care-header > p:not(.eyebrow) { color:#637069; max-width:280px; line-height:1.7; }.care-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }.care-card { position:relative; }.care-number { position:absolute; top:14px; left:14px; color:#f8f5ed; font-size:9px; letter-spacing:.13em; z-index:1; }.care-card-image { height:31vw; min-height:300px; background-size:cover; background-position:center; }.care-light { background-image:url('https://images.unsplash.com/photo-1534710961216-75c88202f43e?auto=format&fit=crop&w=900&q=85'); }.care-water { background-image:url('https://images.unsplash.com/photo-1485955900006-10f4d324d411?auto=format&fit=crop&w=900&q=85'); }.care-card-footer { display:flex; justify-content:space-between; align-items:end; padding-top:17px; border-top:1px solid var(--line); margin-top:17px; }.care-card-footer h3 { font-size:26px; margin:0; }.care-card-footer span { font-size:9px; letter-spacing:.08em; text-transform:uppercase; color:#68746d; }
.consultation { min-height:690px; display:grid; grid-template-columns:50% 50%; background:var(--forest-deep); color:var(--ivory); }.consult-image { background:url('https://images.unsplash.com/photo-1598880940080-ff9a29891b85?auto=format&fit=crop&w=1500&q=85') center/cover; }.consult-content { display:flex; flex-direction:column; justify-content:center; padding:90px 10vw; }.consult-content h2 { font-size:clamp(65px,7vw,102px); margin-bottom:30px; }.consult-content > p:not(.eyebrow) { color:#cbd4cb; max-width:285px; line-height:1.7; margin-bottom:37px; }
.site-footer { background:#0b201b; color:#e3e8dc; padding:70px 4.7vw 23px; }.footer-top { display:flex; justify-content:space-between; align-items:start; padding-bottom:110px; }.footer-mark { font-size:27px; }.footer-top p { font-family:var(--display); font-size:25px; line-height:1.12; margin:2px 0 0 -10vw; }.back-top { text-transform:uppercase; letter-spacing:.14em; font-size:9px; padding-top:6px; }.back-top span { font-size:14px; margin-left:12px; }.footer-bottom { border-top:1px solid rgba(229,235,222,.25); padding-top:17px; display:flex; justify-content:space-between; color:#a3b0a5; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }.footer-bottom div { display:flex; gap:32px; }.search-overlay { position:fixed; inset:0; background:rgba(14,41,34,.98); color:var(--ivory); z-index:30; display:flex; flex-direction:column; justify-content:center; align-items:center; opacity:0; visibility:hidden; transition:.35s; }.search-overlay.open { opacity:1; visibility:visible; }.search-overlay .eyebrow { color:#adbaaf; }.search-overlay input { width:min(600px,80vw); border:0; border-bottom:1px solid #9aaba0; background:none; color:var(--ivory); font:32px var(--display); padding:15px 0; outline:0; }.search-overlay input::placeholder { color:#829589; }.close-search { position:absolute; top:35px; right:5vw; color:var(--ivory); font-size:32px; font-weight:200; }
.reveal { opacity:0; transform:translateY(25px); transition:opacity .8s ease, transform .8s ease; }.reveal.visible { opacity:1; transform:none; }.image-reveal { animation:heroIn 1.4s cubic-bezier(.2,.7,.2,1) both; } @keyframes heroIn { from { opacity:0; transform:scale(1.08); } to { opacity:1; transform:scale(1.02); } }
@media (max-width: 800px) { .announcement { padding:0 15px; font-size:8px; gap:7px; text-align:center; }.announcement a { display:none; }.site-header { height:70px; padding:0 6vw; }.main-nav, .header-consult { display:none; }.main-nav.mobile-open { display:flex; position:absolute; top:70px; left:0; right:0; margin:0; padding:24px 8vw 28px; background:var(--ivory); border-top:1px solid var(--line); border-bottom:1px solid var(--line); flex-direction:column; gap:19px; z-index:5; }.header-actions { gap:17px; }.menu-toggle { display:block; }.hero { min-height:calc(100vh - 103px); }.hero-image { background-position:61% center; }.hero-content { padding:8vh 8vw 13vh; }.hero h1 { font-size:23vw; margin-bottom:31px; }.hero-tagline { font-size:15px; }.hero-foot { left:8vw; right:8vw; }.hero-foot > span:last-child { display:none; }.section-padding { padding:90px 8vw; }.section-marker { margin-bottom:50px; }.intro-grid, .care { grid-template-columns:1fr; gap:35px; margin-left:0; }.intro-copy { padding-top:0; font-size:15px; }.section-heading { align-items:start; flex-direction:column; gap:20px; margin-bottom:35px; }.section-heading h2 { font-size:52px; }.plant-grid { grid-template-columns:1fr; gap:46px; }.plant-image { height:100vw; max-height:none; }.collection-note { margin-top:60px; }.split-section { grid-template-columns:1fr; }.split-image { min-height:100vw; order:1; }.dark-panel { min-height:600px; order:2; padding:90px 8vw 60px; }.dark-panel h2 { font-size:76px; }.panel-index { right:8vw; }.heading-aside { margin:0; }.spaces-feature { grid-template-columns:1fr; }.space-image { height:112vw; min-height:0; }.space-caption { padding:24px 0 0; }.space-caption h3 { margin:45px 0 30px; font-size:42px; }.space-thumbs { gap:8px; }.thumb { height:120px; padding:10px 7px; }.thumb span { font-size:7px; }.care-header h2 { font-size:60px; }.care-cards { grid-template-columns:1fr; gap:45px; }.care-card-image { height:95vw; }.consultation { grid-template-columns:1fr; }.consult-image { min-height:105vw; }.consult-content { min-height:560px; padding:80px 8vw; }.consult-content h2 { font-size:70px; }.footer-top { padding-bottom:80px; flex-direction:column; gap:35px; }.footer-top p { margin:0; }.footer-bottom, .footer-bottom div { gap:12px; flex-direction:column; }.footer-bottom > div:last-child { flex-direction:row; margin-top:16px; }.footer-bottom { padding-top:20px; }.search-overlay input { font-size:25px; } }

/* Product metadata keeps the collection cards useful without changing their editorial proportions. */
.plant-info .plant-category { color:#78827b; margin-bottom:7px; }
.plant-info .plant-price { color:var(--forest); margin-top:8px; }
.plant-details { border-top:1px solid var(--line); margin:20px 0 0; padding:13px 0 0; display:grid; grid-template-columns:repeat(2,1fr); gap:10px 18px; }
.plant-details div:last-child { grid-column:1 / -1; }
.plant-details dt { color:#78827b; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.plant-details dd { color:#34453d; font-size:11px; margin:2px 0 0; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.collection-tools { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:22px 0 20px; margin-bottom:18px; }
.collection-search { width:min(280px,100%); display:flex; align-items:center; border-bottom:1px solid #9da79f; margin-bottom:24px; }
.collection-search input { width:100%; border:0; outline:0; background:transparent; color:var(--forest); font:14px var(--body); padding:7px 0 10px; }
.collection-search input::placeholder { color:#89938c; }.collection-search span { color:var(--forest); font-size:20px; transform:rotate(-20deg); }
.filter-groups { display:flex; flex-wrap:wrap; gap:21px 30px; align-items:baseline; }.filter-group { display:flex; align-items:baseline; gap:13px; }.filter-label { color:#78827b; font-size:9px; letter-spacing:.16em; text-transform:uppercase; white-space:nowrap; }.filter-options { display:flex; flex-wrap:wrap; gap:7px; }
.filter-button, .clear-filters { color:#53625a; font-size:10px; letter-spacing:.06em; padding:4px 8px; border:1px solid transparent; transition:color .25s, border .25s, background .25s; }.filter-button:hover, .filter-button.active { color:var(--forest); border-color:#aab4ab; }.filter-button.active { background:#e8e5dc; }.clear-filters { color:var(--forest); margin-top:20px; padding-left:0; padding-right:0; border-bottom:1px solid #9ba59d; }.clear-filters:hover { color:#6c7b71; }
.catalogue-status { color:#78827b; font-size:9px; letter-spacing:.12em; text-transform:uppercase; margin:0 0 22px; }.no-results { grid-column:1 / -1; border-top:1px solid var(--line); padding:38px 0; color:#69766e; }.whatsapp-button { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); color:var(--forest); font-size:9px; letter-spacing:.1em; text-transform:uppercase; padding:13px 0 2px; margin-top:18px; transition:color .25s; }.whatsapp-button span { font-size:14px; }.whatsapp-button:hover { color:#718279; }
@media (max-width: 800px) { .collection-tools { padding-top:19px; }.filter-groups { display:block; }.filter-group { display:block; margin-bottom:18px; }.filter-label { display:block; margin-bottom:8px; }.filter-options { gap:7px 5px; }.filter-button { padding:6px 8px; }.clear-filters { margin-top:0; }.catalogue-status { margin-bottom:19px; }.whatsapp-button { min-height:42px; padding-top:12px; } }
.vessel-image { background-image:url('https://images.unsplash.com/photo-1485955900006-10f4d324d411?auto=format&fit=crop&w=1400&q=85'); }
.plant-two { background-image:url('https://images.unsplash.com/photo-1556228578-8c89e6adf883?auto=format&fit=crop&w=900&q=85'); }
.intro-title .eyebrow { line-height:1.8; }
.intro-closing { color:var(--forest); font-family:var(--display); font-size:25px; line-height:1.2; margin-top:38px !important; }
.approach-principles { border-top:1px solid var(--line); margin:105px 0 0 8vw; padding-top:22px; display:grid; grid-template-columns:repeat(3,1fr); gap:7vw; }
.approach-principle > span { color:#78827b; font-size:10px; letter-spacing:.16em; }.approach-principle h3 { font-size:11px; font-weight:500; letter-spacing:.16em; margin:27px 0 14px; }.approach-principle p { color:#637069; font-size:13px; line-height:1.7; margin:0; max-width:250px; }
.contact-section { background:var(--forest); color:var(--ivory); display:grid; grid-template-columns:1.1fr .9fr; gap:10vw; }
.contact-intro { max-width:570px; }.contact-intro h2 { font-size:clamp(55px,6.2vw,88px); line-height:.98; margin-bottom:32px; }.contact-intro h2 em { color:#aab9aa; }.contact-intro > p:not(.eyebrow) { color:#cbd4cb; font-size:15px; line-height:1.75; max-width:470px; margin:0 0 34px; }.contact-location { display:block; color:#b9c6ba; font-size:9px; letter-spacing:.16em; margin-top:28px; }.contact-points { border-top:1px solid rgba(237,240,230,.28); }.contact-point { border-bottom:1px solid rgba(237,240,230,.28); padding:21px 0 24px; display:grid; grid-template-columns:34px 1fr; column-gap:18px; }.contact-point > span { color:#aebdaf; font-size:10px; letter-spacing:.14em; }.contact-point h3 { font-size:11px; font-weight:500; letter-spacing:.15em; margin:0 0 9px; }.contact-point p { color:#cbd4cb; font-size:13px; line-height:1.6; grid-column:2; margin:0; max-width:300px; }
@media (max-width: 800px) { .intro-closing { font-size:23px; margin-top:30px !important; }.approach-principles { margin:55px 0 0; grid-template-columns:1fr; gap:34px; }.approach-principle h3 { margin:10px 0 8px; }.approach-principle p { max-width:320px; } }
.contact-section .button-light:hover { background:#dfe5dc; color:var(--forest); }
@media (max-width: 800px) { .contact-section { grid-template-columns:1fr; gap:58px; }.contact-intro h2 { font-size:58px; }.contact-intro > p:not(.eyebrow) { font-size:14px; }.contact-points { margin-top:4px; } }
.contact-section { grid-template-columns:1.05fr .95fr; align-items:start; gap:11vw; }
.contact-intro { max-width:620px; }.contact-intro h2 { margin-bottom:0; }.contact-details { max-width:480px; padding-top:7px; }.contact-support { color:#cbd4cb; font-size:15px; line-height:1.75; margin:0; }.contact-details .contact-points { border-top:0; margin-top:52px; }.contact-details .contact-point { border-bottom:0; padding:0 0 28px; grid-template-columns:34px 1fr; column-gap:17px; }.contact-details .contact-point > div { grid-column:2; }.contact-details .contact-point h3 { margin:0 0 9px; }.contact-details .contact-point p { grid-column:auto; }.contact-actions { margin-top:9px; }.contact-actions .contact-location { margin-top:18px; }
@media (max-width: 800px) { .contact-section { grid-template-columns:1fr; gap:50px; }.contact-details { max-width:none; padding-top:0; }.contact-support { font-size:14px; }.contact-details .contact-points { margin-top:42px; }.contact-details .contact-point { padding-bottom:25px; }.contact-actions { margin-top:7px; } }
.collection .plant-grid { grid-template-columns:repeat(4,1fr); gap:30px 20px; }
.collection .plant-image { height:25vw; min-height:250px; }
@media (max-width: 800px) { .collection .plant-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 10px; }.collection .plant-image { height:43vw; min-height:0; }.collection .plant-info h3 { font-size:21px; }.collection .plant-details { gap:9px 8px; }.collection .plant-details dd { overflow-wrap:anywhere; } }
@media (max-width: 800px) { .hero h1 { font-size:clamp(56px,18vw,88px); max-width:100%; } }
body { overflow-x:hidden; }
.split-section, .consultation { overflow:hidden; }
.bundle-description { color:#4d5a52; font-size:12px; line-height:1.6; margin:17px 0 0; }
.bundle-details { margin-top:17px; }
.plant-modal-description { color:#637069; font-size:14px; line-height:1.7; margin:0 0 28px; max-width:360px; }
.modal-open { overflow:hidden; }
.enquiry-modal { position:fixed; inset:0; z-index:45; display:flex; align-items:center; justify-content:center; padding:30px; background:rgba(9,27,22,.72); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .35s ease, visibility .35s ease; }
.enquiry-modal.open { opacity:1; visibility:visible; pointer-events:auto; }
.enquiry-dialog { width:min(760px,100%); max-height:90vh; position:relative; overflow:auto; background:var(--ivory); color:var(--ink); padding:62px 68px 54px; box-shadow:0 24px 80px rgba(7,24,19,.28); transform:translateY(18px) scale(.985); transition:transform .45s cubic-bezier(.2,.7,.2,1); }
.enquiry-modal.open .enquiry-dialog { transform:none; }.enquiry-close { position:absolute; top:18px; right:22px; width:34px; height:34px; border:1px solid rgba(21,55,46,.25); border-radius:50%; background:rgba(246,243,237,.8); color:var(--forest); font-size:24px; font-weight:300; line-height:1; }.enquiry-close:hover { background:var(--forest); color:var(--ivory); }.enquiry-header { max-width:470px; }.enquiry-header .eyebrow { margin-bottom:18px; }.enquiry-header h2 { font-size:clamp(52px,6vw,78px); margin:0 0 20px; }.enquiry-header h2 em { color:#829085; }.enquiry-header > p:not(.eyebrow) { color:#637069; line-height:1.65; margin:0 0 32px; }.enquiry-form { display:grid; gap:18px; }.enquiry-fields { display:grid; gap:18px; }.enquiry-fields-two { grid-template-columns:repeat(2,1fr); }.enquiry-form label { color:#53625a; display:grid; gap:7px; font-size:9px; letter-spacing:.13em; text-transform:uppercase; }.enquiry-form input, .enquiry-form select, .enquiry-form textarea { width:100%; border:0; border-bottom:1px solid #aab4ab; border-radius:0; outline:0; background:transparent; color:var(--forest); font:14px var(--body); padding:8px 0 9px; }.enquiry-form select { appearance:none; background-image:linear-gradient(45deg,transparent 50%,#53625a 50%),linear-gradient(135deg,#53625a 50%,transparent 50%); background-position:calc(100% - 8px) 14px, calc(100% - 3px) 14px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; padding-right:20px; }.enquiry-form textarea { resize:vertical; min-height:70px; }.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { border-bottom-color:var(--forest); }.enquiry-submit { justify-content:center; width:100%; margin-top:7px; min-height:50px; }.enquiry-submit:hover { background:var(--forest-deep); }
@media (max-width:800px) { .enquiry-modal { padding:12px; align-items:flex-end; }.enquiry-dialog { width:100%; max-height:calc(100vh - 24px); padding:42px 25px 25px; }.enquiry-close { top:14px; right:14px; }.enquiry-fields-two { grid-template-columns:1fr; gap:18px; }.enquiry-header h2 { font-size:58px; }.enquiry-header > p:not(.eyebrow) { margin-bottom:25px; }.enquiry-form { gap:16px; }.enquiry-submit { min-height:54px; } }
.plant-modal { position:fixed; inset:0; z-index:40; display:flex; align-items:center; justify-content:center; padding:30px; background:rgba(9,27,22,.72); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .35s ease, visibility .35s ease; }
.plant-modal.open { opacity:1; visibility:visible; pointer-events:auto; }
.enquiry-modal.enquiry-modal.open { opacity:1; visibility:visible; pointer-events:auto; }
#enquiry-modal.open { opacity:1 !important; visibility:visible !important; pointer-events:auto !important; }
.plant-modal-dialog { width:min(960px,100%); max-height:88vh; display:grid; grid-template-columns:48% 52%; position:relative; overflow:hidden; background:var(--ivory); color:var(--ink); box-shadow:0 24px 80px rgba(7,24,19,.28); transform:translateY(18px) scale(.985); transition:transform .45s cubic-bezier(.2,.7,.2,1); }
.plant-modal.open .plant-modal-dialog { transform:none; }
.plant-modal-image { min-height:570px; background-position:center; background-size:cover; }
.plant-modal-content { padding:76px 62px 54px; overflow:auto; }
.plant-modal-close { position:absolute; top:18px; right:22px; z-index:1; width:34px; height:34px; border:1px solid rgba(21,55,46,.25); border-radius:50%; background:rgba(246,243,237,.8); color:var(--forest); font-size:24px; font-weight:300; line-height:1; }
.plant-modal-close:hover { background:var(--forest); color:var(--ivory); }.plant-modal-content .eyebrow { margin-bottom:20px; }.plant-modal-content h2 { font-size:clamp(52px,6vw,82px); margin:0 0 18px; }.plant-modal-price { color:var(--forest); font-size:12px; letter-spacing:.1em; text-transform:uppercase; margin:0 0 38px; }.plant-modal-details { border-top:1px solid var(--line); margin:0 0 34px; padding-top:17px; display:grid; grid-template-columns:repeat(2,1fr); gap:18px 20px; }.plant-modal-details div:last-child { grid-column:1 / -1; }.plant-modal-details dt { color:#78827b; font-size:9px; letter-spacing:.14em; text-transform:uppercase; }.plant-modal-details dd { color:#34453d; font-size:12px; margin:3px 0 0; }.button-dark { background:var(--forest); color:var(--ivory); }.button-dark:hover { background:var(--forest-deep); }
@media (max-width: 800px) { .plant-modal { padding:12px; align-items:flex-end; }.plant-modal-dialog { width:100%; max-height:calc(100vh - 24px); grid-template-columns:1fr; overflow:auto; }.plant-modal-image { min-height:44vh; max-height:420px; }.plant-modal-content { padding:34px 25px 26px; overflow:visible; }.plant-modal-close { top:14px; right:14px; }.plant-modal-content h2 { font-size:59px; }.plant-modal-price { margin-bottom:28px; }.plant-modal-details { margin-bottom:27px; }.plant-modal-whatsapp { width:100%; justify-content:space-between; min-height:52px; } }
