/* Independent demo canvases; loaded only on the concept pages. */
.snippet-page{padding-bottom:40px}.sn-intro{padding-block:65px 30px;max-width:820px}.sn-intro h1{font-size:clamp(48px,5.5vw,80px);letter-spacing:-3.5px;line-height:1.04;margin:24px 0}.sn-intro>p:last-child{font:400 17px/1.9 var(--font);color:#b5c7ba;max-width:710px}.sn-jumps{display:flex;flex-wrap:wrap;gap:16px 35px;padding:20px 0 60px;color:var(--brand);font-size:14px}.sn-section{margin-bottom:95px;scroll-margin-top:30px}.sn-heading{display:grid;grid-template-columns:65px 1fr 1fr;gap:25px;align-items:start;margin-bottom:28px}.sn-heading>p:first-child{font-size:11px;color:var(--brand);padding-top:10px;letter-spacing:1px}.sn-heading h2{font-size:35px;letter-spacing:-1px;line-height:1.2}.sn-heading>p:last-child{font:400 14px/1.85 var(--font);color:#b5c7ba;max-width:450px}.sn-window{border:1px solid #546659;border-radius:10px;overflow:hidden;color-scheme:light;color:#203327;background:#eff3ed;box-shadow:0 22px 60px #0002}.sn-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 35px;border-bottom:1px solid #1c39252b}.sn-toolbar>strong{font:600 29px/1 var(--font-heading);letter-spacing:-1.4px}.sn-toolbar>span{font-size:11px;letter-spacing:1px}.sn-toolbar nav{display:flex;gap:28px;font-size:13px}.sn-toolbar a:hover{text-decoration:underline;text-underline-offset:4px}.sn-window h3{font-size:32px;letter-spacing:-1px;line-height:1.15}.sn-window h4{font:600 18px/1.4 var(--font-heading);margin:0 0 12px}.sn-window p{font-family:var(--font)}.sn-kicker{font-size:11px;letter-spacing:1px;line-height:1.7;margin-bottom:14px;color:#53705c}.sn-window label{display:block;font-size:13px;font-weight:600;line-height:1.5;margin-bottom:8px}.sn-window input,.sn-window select,.sn-window textarea{font:400 15px/1.5 var(--font);color:#223f2b;background:#fff;border:1px solid #adc1b1;border-radius:5px;min-height:44px;padding:10px 12px;max-width:100%;width:100%}.sn-window textarea{resize:vertical}.sn-window select{padding-right:30px}.sn-window button{font:500 13px/1.5 var(--font);cursor:pointer}.sn-window button:disabled{cursor:default;opacity:.5}.sn-window [hidden]{display:none!important}.sn-window button:focus-visible,.sn-window input:focus-visible,.sn-window select:focus-visible,.sn-window textarea:focus-visible{outline:3px solid #326fc2;outline-offset:3px}.sn-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid #1b7438;background:var(--brand);color:#113420;border-radius:5px;font-weight:600!important}.sn-button:hover:not(:disabled){background:#54eb8d}.sn-quiet{background:transparent;border:0;padding:10px 0;color:inherit;text-decoration:underline;text-underline-offset:4px;min-height:44px}.sn-feedback{font-size:12px;line-height:1.8;color:#536d5a;margin-top:15px;min-height:43px}.sn-small{font-size:12px;line-height:1.8;color:#536d5a;margin-top:15px}.sn-segments{display:flex;gap:6px;padding:5px;background:#dde7df;border-radius:6px;margin-bottom:22px}.sn-segments button{flex:1;min-height:41px;padding:9px 10px;border:1px solid transparent;border-radius:4px;color:#3d5946;background:transparent}.sn-segments button[aria-pressed=true]{background:#fff;border-color:#b0c3b6;box-shadow:0 2px 4px #2543310d;color:#163d23}.sn-empty{padding:24px;font-size:14px;line-height:1.8;color:#58715f}.sn-window dl{margin:20px 0}.sn-window dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #25433120;font-size:13px;line-height:1.7}.sn-window dt{color:#607a68}.sn-window dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.sn-notice{padding:20px;border:1px solid var(--line);margin-bottom:40px}
/* Architecture: a real editorial page hierarchy, not an isolated hero image. */
.forma{background:#f4f1e8;color:#303329}.forma .sn-toolbar{padding:26px 38px}.forma .sn-toolbar>strong{letter-spacing:-1.8px}.forma-hero{position:relative;isolation:isolate;height:500px;overflow:hidden}.forma-hero img{width:100%;height:100%;object-fit:cover;object-position:center 56%}.forma-hero>div{position:absolute;inset:40px auto auto 40px;color:white;max-width:500px}.forma-hero p{font-size:11px;letter-spacing:1.4px;margin-bottom:24px}.forma-hero h3{font-size:clamp(45px,5.7vw,80px);letter-spacing:-3.7px;line-height:.99}.forma-hero a{display:inline-block;font-size:13px;margin-top:30px;border-bottom:1px solid #ffffff8c;padding-bottom:6px}.forma-project{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:48px 40px}.forma-project h3{font-size:38px;line-height:1.13;max-width:330px;margin-bottom:18px}.forma-project>div>p:last-child{font-size:15px;line-height:1.9;max-width:370px;color:#69705d}.forma-project-info{min-height:160px}.forma-project-info p{font-size:14px;line-height:1.9;color:#69705d}.forma-project-info>span{display:block;margin-top:17px;font-size:12px;color:#777c6c}.forma .sn-segments{background:#e7e5dc}.forma .sn-segments button{color:#555e4b}.forma-bottom{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-top:1px solid #c9ccbd;padding:40px;background:#e9ebdf}.forma-bottom section h3{font-size:30px;max-width:370px}.forma-bottom section>p:last-child{font-size:14px;line-height:1.9;max-width:390px;margin-top:20px;color:#626d57}.forma-bottom form h3{font-size:25px;margin-bottom:22px}.forma-bottom select{margin-bottom:18px}.forma-bottom .sn-button{margin-top:16px}
/* CRM: overview, list and selected record use a consistent reading order. */
.crm{background:#eef4ef}.crm .sn-toolbar{background:#183f2b;color:#eff9ef;border:0}.crm .sn-toolbar>span{margin-right:auto;color:#bcd3c2}.crm-body{padding:32px}.crm-heading h3{font-size:30px}.crm-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.crm-metrics>div{padding:22px;background:#fff;border:1px solid #ccdbce;border-radius:6px}.crm-metrics span{display:block;font-size:12px;color:#5c7764;margin-bottom:10px}.crm-metrics strong{font:500 clamp(23px,2.5vw,36px)/1.2 var(--font-heading);letter-spacing:-1px}.crm-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:25px;align-items:start}.crm-filters{display:grid;grid-template-columns:1.2fr 1fr;gap:12px;margin-bottom:15px}.crm-list{border:1px solid #c4d6c8;border-radius:6px;overflow:hidden;background:white}.crm-row{display:flex;justify-content:space-between;gap:20px;padding:22px 19px;text-align:left;width:100%;border:0;border-bottom:1px solid #d4e0d6;background:#fff;color:#2b4632;min-height:90px}.crm-row:last-child{border-bottom:0}.crm-row[aria-pressed=true]{background:#d7f3e0;box-shadow:inset 4px 0 #25b45b}.crm-row>span{display:flex;flex-direction:column;gap:8px}.crm-row>span:last-child{text-align:right}.crm-row strong{font-size:14px;font-weight:600}.crm-row small{font-size:12px;line-height:1.5;color:#56775f}.crm-detail{background:#fff;border:1px solid #c4d6c8;border-radius:6px;padding:26px}.crm-detail h3{font-size:29px}.crm-detail>p:not(.sn-kicker){font-size:12px;color:#68816f;margin-top:10px;overflow-wrap:anywhere}.crm-detail .sn-segments{margin-bottom:23px}.crm-detail form{margin-bottom:27px}.crm-detail form .sn-button{margin-top:12px}.crm-history{list-style:none;margin:0;padding:0;max-height:180px;overflow:auto}.crm-history li{font-size:12px;line-height:1.8;color:#52705c;padding:10px 0 10px 16px;border-left:2px solid #c5ddcb;overflow-wrap:anywhere}.crm-history li+li{border-top:1px solid #e2ebe4}
/* Booking: selection on the left, clear confirmation on the right. */
.booking{background:#eceff8;color:#23374e}.booking .sn-toolbar{background:#d8e0f2;color:#2b405d}.booking .sn-toolbar>strong{font-size:35px}.booking-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;padding:42px}.booking-grid>div>h3{font-size:51px;letter-spacing:-2.5px}.booking .sn-kicker{color:#627591}.booking-selects{margin:30px 0}.booking-selects select+label{margin-top:22px}.booking select{color:#2a4260;border-color:#abbcd3}.sn-days{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:25px}.sn-days button{display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid #bdcadf;background:#fafbff;color:#425876;border-radius:6px;padding:14px}.sn-days span{font-size:11px}.sn-days strong{font:500 28px/1.3 var(--font-heading)}.sn-days button[aria-pressed=true]{background:#2d466a;color:#fff;border-color:#2d466a}.sn-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sn-slots button{min-height:44px;border:1px solid #acbdd2;background:#fff;color:#344e6b;border-radius:4px;padding:10px}.sn-slots button[aria-pressed=true]{background:#d0f2dc;border-color:#65a37a;color:#164d29}.sn-slots button[data-occupied=true]{text-decoration:line-through;background:#e1e5ef;opacity:.55}.booking-summary{padding:30px;background:#fff;border:1px solid #c7d1e1;border-radius:8px;align-self:start;margin-top:7px}.booking-summary>h4{font-size:30px;letter-spacing:-1px;margin-top:20px}.booking-summary dl{margin-bottom:30px}.booking-summary .sn-button{width:100%}.booking-summary .sn-quiet{display:block;margin-top:10px}.booking .sn-feedback,.booking .sn-small{color:#5c708e}.booking-summary dd{max-width:65%}
/* Store: one coherent product, options and a visible basket. */
.shop{background:#fff6f1;color:#512a25}.shop .sn-toolbar{background:#f7c5c6;color:#702e29}.shop .sn-toolbar>strong{font-size:34px}.shop .sn-toolbar>a{font-size:13px}.shop-product{display:grid;grid-template-columns:1.05fr 1fr}.shop-photo{background:#f5b9bf;min-height:600px}.shop-photo img{height:100%;width:100%;object-fit:cover;object-position:65% center}.shop-info{padding:40px}.shop-info .sn-kicker{color:#956b62}.shop-info h3{font-size:44px;letter-spacing:-2px}.shop-info>p:not(.sn-kicker){font-size:14px;line-height:1.9;margin-top:20px;color:#896d62;max-width:410px}.shop-price{display:block;font:500 30px/1.3 var(--font-heading);margin:22px 0}.shop select{border-color:#d2b5a9;color:#633b32;margin-bottom:18px}.shop-info .sn-button{width:100%;background:#732d28;color:#fff6ee;border-color:#732d28}.shop-info .sn-button:hover:not(:disabled){background:#8c3c32}.shop-info details{margin-top:25px;border-top:1px solid #dfc9bf;padding-top:18px}.shop-info summary{font-size:13px;cursor:pointer}.shop-info details p{font-size:13px;line-height:1.9;margin-top:15px;color:#896d62}.shop-basket{display:grid;grid-template-columns:1.2fr .8fr;gap:45px;padding:35px 40px;border-top:1px solid #e4cfc4}.shop-basket h3{font-size:29px;margin-bottom:22px}.shop-item{display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid #e4cfc4;padding:20px 0}.shop-item>div:first-child{flex:1}.shop-item strong{font-size:13px}.shop-item small{display:block;font-size:12px;color:#8b6a5f;margin-top:7px}.shop-quantity{display:flex;align-items:center;gap:10px}.shop-quantity button{border:1px solid #d7bdb0;background:white;color:#733d30;border-radius:4px;width:34px;min-height:36px;font-size:18px}.shop-quantity span{font-size:13px}.shop-totals{background:#f2e6dd;padding:24px;border-radius:6px}.shop-totals select{margin-bottom:0}.shop-totals dl{margin-top:12px}.shop-totals dt{color:#7e5d50}.shop-total{font-size:20px!important;border:0!important;padding-top:17px!important}.shop-totals .sn-button{width:100%}.shop-totals .sn-small{color:#876b5e}.shop-feedback{margin:0;padding:0 40px 25px;color:#856254}
@media(max-width:1000px){.sn-heading{grid-template-columns:50px 1fr;gap:15px}.sn-heading>p:last-child{grid-column:2;max-width:700px}.forma-project,.forma-bottom{gap:35px;padding:30px}.crm-body{padding:25px}.crm-grid{grid-template-columns:1fr 1fr;gap:18px}.crm-filters{grid-template-columns:1fr}.crm-row{padding:18px 14px;gap:10px}.crm-row strong{font-size:13px}.crm-detail{padding:22px}.booking-grid{gap:30px;padding:30px}.booking-summary{padding:24px}.shop-info{padding:30px}.shop-info h3{font-size:37px}.shop-basket{padding:30px;gap:30px}.sn-toolbar{padding:22px 28px}}
@media(max-width:760px){.snippet-page.wrap{width:calc(100% - 32px)}.sn-intro{padding-top:40px}.sn-intro h1{font-size:48px;letter-spacing:-2.5px}.sn-intro>p:last-child{font-size:15px}.sn-jumps{gap:13px 22px;padding-bottom:40px;font-size:13px}.sn-section{margin-bottom:60px}.sn-heading{display:block}.sn-heading>p:first-child{padding:0;margin-bottom:10px}.sn-heading h2{font-size:29px;margin-bottom:12px}.sn-heading>p:last-child{font-size:14px}.sn-toolbar{padding:20px;gap:15px;flex-wrap:wrap}.sn-toolbar>strong{font-size:25px}.sn-toolbar>span{font-size:9px}.sn-toolbar nav{gap:16px;font-size:12px}.forma .sn-toolbar{padding:22px}.forma-hero{height:360px}.forma-hero>div{inset:25px auto auto 25px}.forma-hero h3{font-size:53px;letter-spacing:-2.5px}.forma-hero p{font-size:9px;letter-spacing:.8px;margin-bottom:20px}.forma-hero a{font-size:12px;margin-top:23px}.forma-project,.forma-bottom{grid-template-columns:1fr;padding:25px;gap:30px}.forma-project h3{font-size:34px}.forma-project>div>p:last-child{max-width:none}.forma-project-info{min-height:170px}.forma-bottom section h3{font-size:29px}.forma-bottom section>p:last-child{max-width:none}.crm .sn-toolbar>span{display:none}.crm-body{padding:20px}.crm-heading h3{font-size:27px}.crm-metrics{gap:8px;margin:23px 0}.crm-metrics>div{padding:14px 9px}.crm-metrics span{font-size:10px;line-height:1.7;min-height:34px}.crm-metrics strong{font-size:clamp(17px,4.5vw,28px);letter-spacing:-.7px;white-space:nowrap}.crm-grid{grid-template-columns:1fr;gap:22px}.crm-filters{grid-template-columns:1.1fr 1fr}.crm-filters label{font-size:12px}.crm-row{padding:19px 16px}.crm-row strong{font-size:14px}.crm-detail{padding:23px}.booking-grid{grid-template-columns:1fr;padding:25px;gap:27px}.booking-grid>div>h3{font-size:47px}.booking-summary{margin-top:0;padding:24px}.shop .sn-toolbar>span{display:none}.shop-product{grid-template-columns:1fr}.shop-photo{min-height:0;height:340px}.shop-photo img{object-position:65% center}.shop-info{padding:26px}.shop-info h3{font-size:40px}.shop-info>p:not(.sn-kicker){max-width:none}.shop-basket{grid-template-columns:1fr;padding:26px;gap:25px}.shop-item{flex-wrap:wrap}.shop-item>div:first-child{flex-basis:100%}.shop-item>strong:last-child{margin-left:auto;font-size:15px}.shop-feedback{padding:0 26px 25px}.shop-totals{padding:23px}.sn-window input,.sn-window select,.sn-window textarea{font-size:16px}.sn-segments{gap:3px}.sn-segments button{font-size:12px;padding:9px 7px}}
@media(prefers-reduced-motion:reduce){.snippet-page *{scroll-behavior:auto}}
