/* Three self-contained, fictional website studies. The frames are visual mockups. */
.wm-section{box-sizing:border-box;background:#e9e7df;color:#18231f;padding:clamp(64px,7vw,112px) var(--gutter) clamp(70px,8vw,120px)}
.wm-section *{box-sizing:border-box}
.wm-intro,.wm-study,.wm-disclosure{max-width:1420px;margin-inline:auto}
.wm-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr);gap:22px 8%;align-items:end;margin-bottom:clamp(60px,7vw,100px)}
.wm-intro>span{grid-column:1/-1;border-top:1px solid #91988c;padding-top:15px;font:700 11px/1.5 monospace;letter-spacing:.12em;color:#526251}
.wm-intro h3{margin:0;font:800 clamp(48px,6.3vw,96px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.065em;text-wrap:balance}
.wm-intro h3 em{font:italic 400 1em Georgia,serif;color:#8a4c32}
.wm-intro p{max-width:510px;margin:0 0 6px;font:400 clamp(16px,1.35vw,19px)/1.6 Arial,Helvetica,sans-serif;color:#3e4b42}
.wm-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1420px;margin:-31px auto 0}
.wm-jump a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:60px;padding:14px 19px;border:1px solid #a5aa9e;color:#18231f;text-decoration:none;font:700 12px/1.3 monospace;transition:background .2s,color .2s}
.wm-jump a span{flex:1;font:700 17px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.03em}
.wm-jump a:hover,.wm-jump a:focus-visible{background:#18231f;color:#f4f0e7}
.wm-jump a:focus-visible{outline:3px solid #a5593d;outline-offset:3px}
.wm-study{padding-top:clamp(48px,6vw,86px);margin-top:clamp(52px,7vw,102px);border-top:1px solid #9ca296}
.wm-study{scroll-margin-top:115px}
.wm-study-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:24px 8%;align-items:end;margin-bottom:30px}
.wm-study-head span{font:700 11px/1.4 monospace;letter-spacing:.11em;color:#4f695b}
.wm-study-head h4{font:800 clamp(40px,4.8vw,68px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.06em;margin:9px 0 0}
.wm-study-head p{font:400 clamp(15px,1.25vw,18px)/1.6 Arial,Helvetica,sans-serif;color:#3d4942;max-width:530px;margin:0 0 4px}
.wm-window{margin:0;background:#fff;border:1px solid #85918a;box-shadow:0 22px 60px #15291f21;overflow:hidden}
.wm-chrome{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px clamp(12px,2vw,24px);background:#f2f3ef;color:#46534b;border-bottom:1px solid #c9cec6;font:700 10px/1.4 monospace;letter-spacing:.04em}
.wm-chrome>b{font-size:9px;color:#735b43;white-space:nowrap}
.wm-dots{display:flex;gap:5px;flex:none}.wm-dots i{width:7px;height:7px;border-radius:50%;background:#aab4aa}.wm-dots i:first-child{background:#ce896d}.wm-dots i:nth-child(2){background:#e4be78}
.wm-window figcaption{padding:14px 20px 16px;font:700 11px/1.5 monospace;letter-spacing:.02em;color:#536055;background:#f5f5f0;border-top:1px solid #d4d8ce}
.wm-faux-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;max-width:100%;font:700 13px/1.4 Arial,Helvetica,sans-serif;padding:14px 17px}.wm-faux-cta b{font-size:19px;line-height:1}

/* 01 — hospitality: the place is the primary visual. */
.wm-retreat-page{background:#54615b;color:#fff;overflow:hidden}
.wm-retreat-hero{position:relative;min-height:580px;isolation:isolate;overflow:hidden}
.wm-retreat-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;z-index:-2}
.wm-retreat-shade{position:absolute;inset:0;background:linear-gradient(90deg,#122922df 0%,#1d3229b5 28%,#1f2d2545 60%,transparent 90%),linear-gradient(0deg,#1229229c,transparent 32%);z-index:-1}
.wm-retreat-nav,.wm-system-nav,.wm-objects-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px clamp(25px,4vw,62px);font:700 11px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.1em}
.wm-retreat-nav strong{font:700 clamp(16px,1.4vw,23px)/1 Arial,Helvetica,sans-serif;letter-spacing:.07em;white-space:nowrap}.wm-retreat-nav strong span{font-size:26px;color:#e7d4aa}
.wm-retreat-nav>span,.wm-system-nav>span,.wm-objects-nav>span{font-size:10px;white-space:nowrap}
.wm-retreat-nav b{border:1px solid #f2f6eab8;padding:9px 15px;white-space:nowrap}
.wm-retreat-copy{position:relative;max-width:780px;padding:105px 0 85px clamp(25px,5vw,75px)}
.wm-retreat-copy small,.wm-system-copy small,.wm-objects-copy small{display:block;font:700 11px/1.5 monospace;letter-spacing:.12em;margin-bottom:20px}
.wm-retreat-copy>strong{display:block;font:400 clamp(53px,5.8vw,88px)/1.03 Georgia,serif;letter-spacing:-.045em;text-wrap:balance}
.wm-retreat-copy>strong em{font-weight:400;color:#f3dab0}
.wm-retreat-copy p{font:400 clamp(16px,1.45vw,21px)/1.5 Arial,Helvetica,sans-serif;max-width:440px;margin:22px 0 26px;color:#f3f4ed}
.wm-retreat-copy .wm-faux-cta{background:#e9e2cd;color:#17322d}
.wm-retreat-foot,.wm-system-foot,.wm-objects-foot{display:flex;justify-content:space-between;gap:20px;padding:15px clamp(25px,4vw,62px);font:700 10px/1.5 monospace;letter-spacing:.08em}
.wm-retreat-foot{border-top:1px solid #f2f4e0a0;background:#1c322674}
.wm-retreat-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);background:#e5dfd0;color:#17342d;min-height:420px}
.wm-retreat-story-copy{padding:clamp(36px,5vw,73px);align-self:center}
.wm-retreat-story-copy small,.wm-objects-collection-copy small,.wm-system-deep-heading small{font:700 10px/1.5 monospace;letter-spacing:.14em}
.wm-retreat-story-copy h5,.wm-objects-collection-copy h5{margin:22px 0;font:400 clamp(38px,4.1vw,63px)/1.05 Georgia,serif;letter-spacing:-.05em}
.wm-retreat-story-copy h5 em{color:#977c5d;font-weight:400}
.wm-retreat-story-copy p,.wm-objects-collection-copy p{font:400 clamp(15px,1.25vw,18px)/1.55 Arial,Helvetica,sans-serif;max-width:410px}
.wm-retreat-story-copy>span,.wm-objects-collection-copy>span{display:inline-flex;gap:28px;align-items:center;border-bottom:1px solid currentColor;margin-top:15px;padding-bottom:9px;font:700 10px/1.5 monospace;letter-spacing:.11em}
.wm-retreat-story>img{width:100%;height:100%;max-height:520px;object-fit:cover;object-position:center}
.wm-retreat-strip{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:28px clamp(25px,4vw,62px);background:#17342d;color:#e9e3d3}
.wm-retreat-strip span{font:700 10px/1.4 monospace;letter-spacing:.1em}.wm-retreat-strip strong{font:400 clamp(23px,2.4vw,34px)/1.2 Georgia,serif;text-align:center}

/* 02 — software: bespoke CSS product visualization, no external UI kit. */
.wm-system-page{background:#101d2b;color:#eff4ee;overflow:hidden}
.wm-system-nav{border-bottom:1px solid #a9bbbf42}.wm-system-nav strong{font:800 clamp(20px,2vw,28px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.06em}.wm-system-nav strong span{color:#ffb268}.wm-system-nav>b{background:#ffad62;color:#102338;padding:11px 16px;white-space:nowrap}
.wm-system-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:520px}
.wm-system-copy{padding:clamp(54px,6vw,93px) 25px 45px clamp(25px,5vw,75px);display:flex;align-items:flex-start;flex-direction:column}
.wm-system-copy small{color:#ffb268}
.wm-system-copy>strong{font:800 clamp(45px,4.6vw,72px)/1.04 Arial,Helvetica,sans-serif;letter-spacing:-.065em;text-wrap:balance}
.wm-system-copy>strong em{font-style:normal;color:#ffad62}
.wm-system-copy p{max-width:440px;margin:22px 0 24px;font:400 clamp(15px,1.35vw,19px)/1.55 Arial,Helvetica,sans-serif;color:#d6e3e2}
.wm-system-copy .wm-faux-cta{background:#f2f0e7;color:#0d2334}
.wm-system-points{display:flex;flex-wrap:wrap;gap:12px 23px;margin-top:auto;padding-top:55px;color:#a8c3c5;font:700 10px/1.5 monospace;letter-spacing:.07em}
.wm-system-visual{position:relative;min-height:500px;margin:30px clamp(24px,4vw,55px) 30px 0;background:linear-gradient(135deg,#183348,#234b58);border:1px solid #769ba057;box-shadow:0 25px 50px #0006;overflow:hidden}
.wm-system-grid{position:absolute;inset:0;background-image:linear-gradient(#abd1cd16 1px,transparent 1px),linear-gradient(90deg,#abd1cd16 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,#000,transparent)}
.wm-system-status{position:absolute;top:35px;left:35px;display:grid;gap:5px}.wm-system-status span,.wm-system-stat span,.wm-system-card span{font:700 10px/1.3 monospace;letter-spacing:.1em;color:#b9d4d5}.wm-system-status b{font:700 24px/1.2 Arial,sans-serif}
.wm-system-route{position:absolute;left:8%;top:27%;width:70%;height:52%;border:2px solid #9bc6c142;border-radius:48% 45% 45% 35%;transform:rotate(-15deg)}
.wm-system-route::before{content:"";position:absolute;left:7%;top:13%;width:80%;height:70%;border:3px dashed #ffb16b9c;border-radius:52% 31% 50% 38%;transform:rotate(19deg)}
.wm-system-route span{position:absolute;z-index:2;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#ffb26b;color:#162d3c;font:800 11px/1 Arial,sans-serif;transform:rotate(15deg)}
.wm-route-one{top:11%;left:12%}.wm-route-two{top:48%;right:10%}.wm-route-three{bottom:4%;left:20%}
.wm-system-stat,.wm-system-card{position:absolute;background:#f2f0e9;color:#182c33;box-shadow:0 15px 30px #04172677;padding:20px 22px}
.wm-system-stat{top:24%;right:7%;min-width:158px;display:grid;gap:3px;transform:rotate(5deg)}.wm-system-stat span,.wm-system-card span{color:#4e6670}.wm-system-stat strong{font:800 64px/1 Arial,sans-serif;letter-spacing:-.07em}.wm-system-stat small{font:400 11px/1.4 Arial,sans-serif}
.wm-system-card{bottom:10%;left:10%;width:min(45%,250px);display:grid;gap:10px;transform:rotate(-4deg)}.wm-system-card b{font:700 16px/1.25 Arial,sans-serif}.wm-system-card i{display:block;width:100%;height:6px;background:#d4ded9;border-radius:6px}.wm-system-card i:nth-last-child(2){width:75%;background:#ffb26b}.wm-system-card i:last-child{width:55%}
.wm-system-foot{border-top:1px solid #93b2ad42;color:#adcbcb}
.wm-system-deep{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:7%;padding:clamp(40px,5vw,75px) clamp(25px,5vw,75px);background:#172c3b;border-top:1px solid #446070}
.wm-system-deep-heading{align-self:start}.wm-system-deep-heading small{color:#ffad62}.wm-system-deep-heading h5{margin:18px 0;font:800 clamp(39px,4vw,61px)/1.05 Arial,Helvetica,sans-serif;letter-spacing:-.06em}.wm-system-deep-heading h5 em{color:#ffad62;font-style:normal}.wm-system-deep-heading p{max-width:370px;color:#d2e2e2;font:400 clamp(15px,1.25vw,18px)/1.55 Arial,Helvetica,sans-serif}
.wm-system-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:9px}
.wm-system-features>div{display:flex;min-height:260px;flex-direction:column;padding:19px 17px 18px;background:#0e202f;border:1px solid #42616e;color:#edf4f1}
.wm-system-features span{font:700 9px/1.5 monospace;letter-spacing:.08em;color:#ffb26b}.wm-system-features b{font:800 clamp(19px,1.7vw,27px)/1.15 Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin-top:32px}.wm-system-features p{font:400 13px/1.45 Arial,Helvetica,sans-serif;color:#bed1d4}.wm-system-features i{font:400 33px/1 Arial,Helvetica,sans-serif;color:#ffb26b;margin-top:auto;font-style:normal}

/* 03 — craft: product and typography have equal weight. */
.wm-objects-page{background:#f4efe6;color:#3b332e}.wm-objects-nav{border-bottom:1px solid #c8bfb2}.wm-objects-nav strong{font:700 clamp(22px,2.3vw,33px)/1 Georgia,serif;letter-spacing:-.06em}.wm-objects-nav strong span{font:700 10px/1 Arial,sans-serif;vertical-align:top;margin-left:3px}.wm-objects-nav>b{border-bottom:1px solid #645548;padding-bottom:5px;white-space:nowrap}
.wm-objects-hero{display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);min-height:520px}
.wm-objects-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:40px 25px 50px clamp(25px,5vw,76px)}.wm-objects-copy small{color:#826758}.wm-objects-copy>strong{font:400 clamp(53px,5.8vw,87px)/1.02 Georgia,serif;letter-spacing:-.055em;text-wrap:balance}.wm-objects-copy>strong em{font-weight:400;color:#936748}.wm-objects-copy p{font:400 clamp(15px,1.3vw,18px)/1.5 Arial,Helvetica,sans-serif;color:#62584e;margin:24px 0 28px}.wm-objects-copy .wm-faux-cta{padding-left:0;border-bottom:1px solid #766b61;color:#3b332e}
.wm-objects-image{min-height:520px;overflow:hidden}.wm-objects-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:62% center}
.wm-objects-foot{border-top:1px solid #c8bfb2;color:#806f61}
.wm-objects-collection{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);min-height:430px;border-top:1px solid #c8bfb2;background:#ded9c9}
.wm-objects-collection-photo{min-height:430px;overflow:hidden}.wm-objects-collection-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.wm-objects-collection-copy{padding:clamp(35px,5vw,72px);align-self:center;color:#283129}.wm-objects-collection-copy small{color:#6e644e}.wm-objects-collection-copy h5 em{color:#8f6046;font-weight:400}
.wm-disclosure{margin-top:68px;padding-top:20px;border-top:1px solid #9ca296;max-width:1420px;color:#536056;font:400 13px/1.65 Arial,Helvetica,sans-serif}

@media(max-width:950px){.wm-intro,.wm-study-head{grid-template-columns:1fr}.wm-intro>span{grid-column:1}.wm-intro p,.wm-study-head p{max-width:700px}.wm-retreat-copy{padding-top:95px}.wm-system-layout{grid-template-columns:1fr 1fr}.wm-system-visual{margin-right:22px}.wm-system-card{left:5%}.wm-system-deep{grid-template-columns:1fr}.wm-system-deep-heading p{max-width:600px}}
@media(max-width:680px){.wm-section{padding:64px 18px 75px}.wm-intro{margin-bottom:60px}.wm-study{margin-top:62px}.wm-study-head{margin-bottom:22px}.wm-chrome{min-height:36px;font-size:9px}.wm-chrome>b{font-size:8px}.wm-chrome>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wm-retreat-page{min-height:570px}.wm-retreat-nav,.wm-system-nav,.wm-objects-nav{padding:20px;gap:5px}.wm-retreat-nav>span,.wm-system-nav>span,.wm-objects-nav>span{display:none}.wm-system-nav strong{font-size:19px}.wm-retreat-nav b,.wm-system-nav b,.wm-objects-nav b{font-size:9px;padding:8px;letter-spacing:0}.wm-retreat-copy{padding:125px 20px 74px;max-width:480px}.wm-retreat-copy>strong{font-size:clamp(43px,11vw,65px)}.wm-retreat-foot,.wm-system-foot,.wm-objects-foot{padding:14px 20px;font-size:8px}.wm-retreat-foot span:nth-child(2){display:none}.wm-system-layout{grid-template-columns:1fr}.wm-system-copy{padding:55px 20px 30px}.wm-system-copy>strong{font-size:clamp(42px,10vw,62px)}.wm-system-points{padding-top:42px}.wm-system-visual{margin:0 20px 26px;min-height:360px}.wm-system-status{top:22px;left:22px}.wm-system-route{top:24%}.wm-system-stat{right:5%;top:25%;min-width:125px;padding:12px}.wm-system-stat strong{font-size:47px}.wm-system-card{left:6%;bottom:7%;width:45%;padding:14px}.wm-system-card b{font-size:13px}.wm-objects-hero{grid-template-columns:1fr}.wm-objects-copy{padding:55px 20px 38px}.wm-objects-copy>strong{font-size:clamp(48px,11vw,65px)}.wm-objects-image{height:330px;min-height:0}.wm-objects-foot span:last-child{display:none}}
@media(max-width:380px){.wm-study-head h4{font-size:34px;letter-spacing:-.05em}.wm-retreat-nav b,.wm-system-nav b,.wm-objects-nav b{display:none}.wm-chrome>b{display:none}.wm-system-stat{right:4%;top:23%}.wm-system-card{width:48%}.wm-window figcaption{font-size:10px}}
@media(max-width:680px){
  .wm-jump{grid-template-columns:1fr;margin:-24px auto 0;gap:6px}.wm-jump a{min-height:47px;padding:10px 13px}.wm-jump a span{font-size:15px}
  .wm-retreat-page{min-height:0}.wm-retreat-hero{min-height:570px}
  .wm-retreat-story{grid-template-columns:1fr}.wm-retreat-story-copy{padding:42px 20px}.wm-retreat-story>img{height:250px;min-height:0}
  .wm-retreat-strip{display:grid;grid-template-columns:1fr auto;padding:23px 20px}.wm-retreat-strip strong{grid-column:1/-1;grid-row:2;text-align:left}.wm-retreat-strip span:last-child{text-align:right}
  .wm-system-deep{padding:45px 20px}.wm-system-features{grid-template-columns:1fr}.wm-system-features>div{min-height:160px}.wm-system-features b{margin-top:18px}.wm-system-features p{margin-bottom:15px}
  .wm-objects-collection{grid-template-columns:1fr}.wm-objects-collection-photo{min-height:0;height:245px}.wm-objects-collection-copy{padding:40px 20px 46px}
}
