
/* =========================================================
   WEBIN SPHERE — REVISION 15
   A quieter, more confident visual system. Real website
   previews replace generic stationery/workspace stock.
   ========================================================= */
:root{
 --ws15-paper:#f3efe6;--ws15-ink:#202b24;--ws15-forest:#25382d;
 --ws15-sage:#aebba8;--ws15-rust:#cb6040;--ws15-line:#c8c6b9;
}
html{scroll-behavior:smooth}
.ws-topline{padding:8px 4.5%;font-size:8px;letter-spacing:.14em;color:#657066}
.ws-topline span:last-child{display:none}
.ws-hero{
 position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
 align-items:center;gap:3vw;min-height:690px;height:auto;max-height:none;
 padding:76px 7.5% 78px;background:#26382e;color:#f4efe6;overflow:hidden;
}
.ws-hero:before{content:"";position:absolute;width:54vw;height:54vw;border-radius:50%;right:-20vw;top:-32vw;background:#82917d18;pointer-events:none}
.ws-hero-image,.ws-hero-shade{display:none!important}
.ws-hero-content{position:relative;z-index:2;left:auto;top:auto;transform:none;width:auto;max-width:690px}
.ws-hero h1{font-size:clamp(56px,6.6vw,96px);line-height:.88;letter-spacing:-.09em;max-width:690px}
.ws-hero h1 em{color:#e5a17e}
.ws-hero-content>p{font-size:15px;max-width:410px;margin:24px 0 25px;color:#e4e4d9;line-height:1.75}
.ws-hero-actions{gap:18px}
.ws-hero .ws-text-link{color:#f3efe6}
.ws-hero-showcase{position:relative;z-index:1;width:100%;max-width:700px;justify-self:end;perspective:1400px;transform:rotateY(-5deg) rotateX(1deg);transition:transform .8s cubic-bezier(.2,.75,.2,1)}
.ws-hero-showcase:hover{transform:rotateY(-1deg) rotateX(0) translateY(-7px)}
.ws-browser{background:#f2eee4;border:1px solid #ffffff55;padding:7px;border-radius:8px;box-shadow:0 36px 90px #111b164d}
.ws-browser-bar{height:30px;display:flex;align-items:center;gap:12px;padding:0 10px;color:#7a7c71;font:8px var(--ws-mono);letter-spacing:.08em}
.ws-browser-bar>b{margin-left:auto;color:#c75e40;font-size:14px}
.ws-browser-dots{display:flex;gap:4px}.ws-browser-dots i{width:6px;height:6px;border-radius:50%;background:#c4b9a7}
.ws-browser-page{background:#f6f0e5;color:#283329;padding:18px 20px 16px;overflow:hidden}
.ws-browser-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #d5c9b7;padding-bottom:13px;font:8px var(--ws15-mono,var(--ws-mono));letter-spacing:.08em}
.ws-browser-nav strong{font:700 15px var(--ws-serif);letter-spacing:-.04em}.ws-browser-nav strong em{color:#bb5638}
.ws-browser-nav span{color:#6f766c;font:7px var(--ws-mono)}
.ws-browser-nav>b{font:7px var(--ws-mono);color:#b85336}
.ws-browser-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:14px;align-items:center;padding:18px 0}
.ws-browser-hero small{font:7px var(--ws-mono);letter-spacing:.12em;color:#a45a3d}
.ws-browser-hero strong{display:block;font:800 clamp(22px,3.2vw,43px)/.88 var(--ws-sans);letter-spacing:-.09em;margin:10px 0}
.ws-browser-hero strong i{font:italic 500 1em var(--ws-serif);color:#b65b3b}
.ws-browser-hero p{font:9px/1.5 var(--ws-sans);color:#687267;margin:0 0 10px}
.ws-browser-hero div>b{font:7px var(--ws-mono);color:#b65b3b}
.ws-browser-hero img{width:100%;height:220px;object-fit:cover;filter:saturate(.88)}
.ws-browser-menu{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #d5c9b7;padding-top:12px}
.ws-browser-menu span{grid-column:1/-1;font:7px var(--ws-mono);letter-spacing:.13em;color:#777b6f}
.ws-browser-menu img{width:100%;height:72px;object-fit:cover}
.ws-showcase-stamp{position:absolute;right:-18px;bottom:-19px;display:flex;align-items:center;gap:9px;background:#d9e0d2;color:#25382d;padding:12px 15px;box-shadow:0 8px 24px #1113;font:8px var(--ws-mono);letter-spacing:.1em;transform:rotate(2deg)}
.ws-showcase-stamp b{font-size:18px;color:#c75e40}
.ws-marquee{display:none!important}
.ws-services-preview{padding:92px 8.5% 82px;background:#f3efe6}
.ws-services-preview .ws-section-head{margin-bottom:34px}
.ws-services-preview .ws-section-head h2{font-size:clamp(44px,5.5vw,76px)}
.ws-services-preview .ws-section-head>p{max-width:320px;font-size:13px}
.ws-service-row{padding:22px 0;grid-template-columns:48px minmax(0,1fr) minmax(100px,.3fr) 24px}
.ws-service-row h3{font-size:clamp(22px,2.3vw,31px)}
.ws-service-row p{max-width:600px;font-size:12px}
.ws-service-meta{font-size:7px;letter-spacing:.1em}
.ws-services-foot{margin-top:24px}
.ws-intro{grid-template-columns:.18fr 1fr;padding:88px 8.5% 92px;background:#e3e8df}
.ws-intro>.ws-section-index{padding-top:8px}
.ws-intro h2{font-size:clamp(48px,6.2vw,86px)}
.ws-intro h2 em{color:#c65f40}
.ws-intro-bottom{margin:25px 0 0 13vw;display:flex;align-items:center;gap:32px}
.ws-intro-bottom p{max-width:500px;font-size:14px}
.ws-intro-mark,.ws-intro-steps{display:none!important}
.ws-work{padding:100px 8.5% 96px;background:#26382e;color:#f3efe6}
.ws-work .ws-section-head{margin-bottom:36px}
.ws-work .ws-section-head h2{font-size:clamp(48px,6vw,84px)}
.ws-work .ws-section-head h2 em{color:#e5a17e}
.ws-work .ws-section-head>p{color:#cbd0c4}
.ws-work-grid{gap:18px}
.ws-work-image{height:clamp(250px,28vw,380px)}
.ws-work-image img{filter:saturate(.94) contrast(1.03)}
.ws-work-info{min-height:115px;padding:18px 4px;border-color:#69766a}
.ws-work-info h3{font-size:clamp(23px,2.2vw,31px)}
.ws-work-info p{color:#c8d0c5}
.ws-work-info>span{color:#efab88}
.ws-concept-note{color:#b9c3b7}
.ws-process-compact{padding:86px 8.5% 90px;background:#e8e6dc;color:#27332b}
.ws-process-compact-head{display:grid;grid-template-columns:.5fr 1fr 1fr;gap:32px;align-items:end;margin-bottom:35px}
.ws-process-compact-head>span{font:9px var(--ws-mono);letter-spacing:.15em;color:#a85539}
.ws-process-compact-head h2{font-size:clamp(42px,5vw,68px);line-height:.9;letter-spacing:-.08em;margin:0}
.ws-process-compact-head h2 em{font:italic 500 1em var(--ws-serif);color:#b65b3b}
.ws-process-compact-head p{max-width:330px;margin:0;color:#657066;font-size:13px;line-height:1.7}
.ws-process-compact-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c3c5b9}
.ws-process-compact-steps>div{padding:18px 18px 0 0;min-height:125px;border-right:1px solid #c3c5b9;transition:background .3s,transform .3s}
.ws-process-compact-steps>div:not(:first-child){padding-left:18px}
.ws-process-compact-steps>div:hover{background:#ffffff55;transform:translateY(-4px)}
.ws-process-compact-steps b{display:block;font:10px var(--ws-mono);color:#c65f40;margin-bottom:14px}
.ws-process-compact-steps strong{display:block;font-size:16px;letter-spacing:-.04em}
.ws-process-compact-steps small{display:block;margin-top:7px;color:#697268;font-size:11px;line-height:1.55;max-width:200px}
.ws-cta{padding-top:90px}
.ws-cta h2{font-size:clamp(48px,6.5vw,88px)}
/* Main nav: hover panels stay compact and gain clear visual focus. */
.navitem.has-panel .nav-panel{border-radius:4px;box-shadow:0 25px 70px #1c2a2040}
.nav-panel>a:hover{background:#ffffff0b;padding-left:10px}
.nav-panel>a img{width:34px;height:34px;object-fit:cover}
.navitem>a:focus-visible,.nav-panel a:focus-visible,.navcta:focus-visible{outline:2px solid var(--coral);outline-offset:4px}
/* Service page: browser mockup rather than another laptop/desk photo. */
.ws-service-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:80px 8.5%;height:auto;min-height:660px;gap:5vw}
.ws-service-hero-image{display:none}
.ws-service-hero-shade{background:linear-gradient(125deg,#23362c,#18281f)}
.ws-service-hero-copy{position:relative;z-index:2;max-width:560px}
.ws-service-browser{position:relative;z-index:2;align-self:center;background:#f4efe5;border:1px solid #ffffff55;padding:8px;border-radius:7px;box-shadow:0 30px 80px #0004;transform:rotateY(-5deg);transition:transform .7s}
.ws-service-browser:hover{transform:rotateY(0) translateY(-6px)}
.ws-service-browser-bar{height:28px;display:flex;align-items:center;gap:5px;padding:0 10px;color:#71786f;font:8px var(--ws-mono)}
.ws-service-browser-bar i{width:6px;height:6px;border-radius:50%;background:#c9bbaa}
.ws-service-browser-bar span{margin-left:12px}
.ws-service-browser-content{background:#f7f1e7;color:#27342b;padding:16px}
.ws-service-browser-nav{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #d7cdbd}
.ws-service-browser-nav b{font:700 12px var(--ws-sans);letter-spacing:-.04em}
.ws-service-browser-nav span{font:7px var(--ws-mono);color:#6b756b}
.ws-service-browser-main{display:grid;grid-template-columns:.9fr 1.1fr;gap:12px;align-items:center;padding:16px 0}
.ws-service-browser-main small{font:7px var(--ws-mono);color:#b75a3c;letter-spacing:.1em}
.ws-service-browser-main strong{display:block;margin:8px 0;font:800 clamp(22px,3vw,36px)/.9 var(--ws-sans);letter-spacing:-.08em}
.ws-service-browser-main strong em{font:italic 500 1em var(--ws-serif);color:#b75a3c}
.ws-service-browser-main p{font-size:9px;color:#697269;line-height:1.5}
.ws-service-browser-main b{font:7px var(--ws-mono);color:#b75a3c}
.ws-service-browser-main img{width:100%;height:210px;object-fit:cover}
.ws-service-browser-foot{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #d7cdbd;padding-top:10px;font:7px var(--ws-mono);color:#7b8175}
.ws-service-hero-foot{position:absolute;left:8.5%;right:8.5%;bottom:22px}
.ws-service-process{display:block;padding:75px 8.5%;background:#e5e9df}
.ws-service-process-image{display:none}
.ws-service-process-copy{max-width:100%;display:grid;grid-template-columns:.7fr 1fr;column-gap:6vw;align-items:start}
.ws-service-process-copy>.ws-section-index,.ws-service-process-copy>h2{grid-column:1}
.ws-service-process-copy>h2{font-size:clamp(42px,5vw,68px)}
.ws-service-process-copy .ws-process-steps{grid-column:2;grid-row:1/span 3}
.ws-service-process-copy>.ws-arrow-link{grid-column:1}
.ws-service-process-art{background:#d1d9cd;color:#2b3a30}
.ws-service-process-art span{font:9px var(--ws-mono);letter-spacing:.16em}
.ws-service-process-art strong{font:800 clamp(70px,11vw,150px)/.8 var(--ws-sans);letter-spacing:-.1em}
.ws-service-process-art i{font-style:normal;font-size:70px;color:#c65f40}
.ws-service-process-art small{font:8px var(--ws-mono);letter-spacing:.14em}
/* Supporting page visual blocks: no generic stationery photography. */
.ws-page-visual{position:relative;min-height:380px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#26382e;color:#f4efe6}
.ws-page-visual:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-90px;top:-150px;background:#b8c8ae20}
.ws-page-visual>span{position:absolute;left:20px;bottom:18px;color:#f0d0ba;font:8px var(--ws-mono);letter-spacing:.13em}
.ws-page-window{position:relative;z-index:1;width:78%;min-height:250px;padding:24px;background:#f2eee4;color:#26342a;box-shadow:0 25px 55px #0003;transform:rotate(-2deg);transition:transform .6s}
.ws-page-visual:hover .ws-page-window{transform:rotate(0) translateY(-5px)}
.ws-page-window>span{font:8px var(--ws-mono);letter-spacing:.12em;color:#778072}
.ws-page-window>b{display:block;margin:28px 0 18px;font:800 clamp(30px,4vw,52px)/.9 var(--ws-sans);letter-spacing:-.08em}
.ws-page-window>b em{font:italic 500 1em var(--ws-serif);color:#c65f40}
.ws-page-window>small{font:8px var(--ws-mono);color:#8a7765;letter-spacing:.1em}
.ws-page-window>div{display:flex;gap:7px;margin-top:24px}
.ws-page-window>div i{display:block;height:7px;background:#c9d2c2;flex:1}
.ws-page-window>div i:nth-child(2){background:#c65f40}
.ws-page-visual-digital{background:#e0e6dc;color:#26342a}
.ws-dashboard{position:relative;z-index:1;width:82%;padding:25px;background:#25372d;color:#f3efe5;box-shadow:0 25px 55px #26342a33;transform:rotate(2deg);transition:transform .6s}
.ws-page-visual-digital:hover .ws-dashboard{transform:rotate(0) translateY(-5px)}
.ws-dashboard>span,.ws-dashboard small{font:8px var(--ws-mono);letter-spacing:.14em;color:#dca184}
.ws-dashboard>b{display:block;font:800 clamp(28px,4vw,50px)/.9 var(--ws-sans);letter-spacing:-.08em;margin:22px 0}
.ws-dashboard-bars{display:flex;align-items:end;gap:8px;height:70px;border-bottom:1px solid #657467}
.ws-dashboard-bars i{display:block;flex:1;background:#a8b99e;height:var(--bar,40%);transform-origin:bottom;animation:ws-bar-grow 1.1s both}
.ws-dashboard-bars i:nth-child(1){--bar:38%}.ws-dashboard-bars i:nth-child(2){--bar:68%}.ws-dashboard-bars i:nth-child(3){--bar:51%}.ws-dashboard-bars i:nth-child(4){--bar:86%}.ws-dashboard-bars i:nth-child(5){--bar:72%}
@keyframes ws-bar-grow{from{transform:scaleY(.05)}to{transform:scaleY(1)}}
.ws-price-preview{position:relative;z-index:1;width:84%;padding:24px;background:#26382e;color:#f3efe5;box-shadow:0 25px 55px #26342a33;transform:rotate(-2deg);transition:transform .6s}
.ws-page-visual-pricing:hover .ws-price-preview{transform:rotate(0) translateY(-5px)}
.ws-price-preview>span{font:8px var(--ws-mono);letter-spacing:.13em;color:#e5a17e}
.ws-price-preview>div{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #ffffff35}
.ws-price-preview b{font:9px var(--ws-mono);letter-spacing:.1em}
.ws-price-preview strong{font:800 24px var(--ws-sans);letter-spacing:-.06em;color:#e5a17e}
/* Sunday Table: menu and gallery are the image story, not decorative extras. */
.r10-dishes .dish{transition:transform .4s,box-shadow .4s}
.r10-dishes .dish:hover{transform:translateY(-7px);box-shadow:0 18px 32px #2b28211c}
.r10-dish-image{overflow:hidden;background:#c8b69c}
.r10-dish-image img,.r10-kitchen-gallery figure img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .5s}
.r10-dish:hover .r10-dish-image img,.r10-kitchen-gallery figure:hover img{transform:scale(1.06);filter:saturate(1.1)}
.r10-kitchen-gallery figure{overflow:hidden;background:#c8b69c}
.r10-kitchen-gallery figure img{display:block;min-height:250px}
.photo-unavailable{display:none!important}
@media(max-width:900px){
 .ws-hero{grid-template-columns:1fr;gap:42px;padding:68px 7% 75px}
 .ws-hero-content{max-width:680px}
 .ws-hero-showcase{justify-self:center;max-width:720px;width:100%;transform:none}
 .ws-browser-hero img{height:190px}
 .ws-process-compact-head{grid-template-columns:1fr 1fr}
 .ws-process-compact-head p{grid-column:2}
 .ws-service-hero{grid-template-columns:1fr;padding:70px 7% 80px;gap:35px}
 .ws-service-browser{max-width:700px;width:100%;margin:0 auto}
 .ws-service-process-copy{grid-template-columns:1fr}
 .ws-service-process-copy .ws-process-steps{grid-column:1;grid-row:auto}
 .ws-service-process-copy>.ws-arrow-link{grid-column:1}
}
@media(max-width:640px){
 .ws-topline{padding:7px 6%;font-size:7px}
 .ws-hero{padding:54px 7% 60px;min-height:unset}
 .ws-hero h1{font-size:clamp(48px,12vw,72px)}
 .ws-hero-content>p{font-size:14px}
 .ws-browser-page{padding:12px}
 .ws-browser-nav span{display:none}
 .ws-browser-nav>b{font-size:6px}
 .ws-browser-hero{grid-template-columns:.9fr 1.1fr;gap:8px}
 .ws-browser-hero img{height:135px}
 .ws-browser-hero strong{font-size:26px}
 .ws-browser-menu img{height:50px}
 .ws-showcase-stamp{right:-5px;bottom:-18px;font-size:7px;padding:9px 11px}
 .ws-services-preview{padding:68px 7%}
 .ws-services-preview .ws-section-head{display:block}
 .ws-services-preview .ws-section-head>p{margin-top:16px}
 .ws-service-row{grid-template-columns:30px minmax(0,1fr) 18px;gap:10px;padding:18px 0}
 .ws-service-row .ws-service-meta{display:none}
 .ws-service-row h3{font-size:22px}
 .ws-service-row p{font-size:11px}
 .ws-intro{display:block;padding:68px 7%}
 .ws-intro>.ws-section-index{margin-bottom:25px}
 .ws-intro h2{font-size:clamp(45px,11vw,64px)}
 .ws-intro-bottom{display:block;margin:22px 0 0}
 .ws-intro-bottom p{font-size:13px}
 .ws-intro-bottom .ws-arrow-link{margin-top:18px}
 .ws-work{padding:72px 7%}
 .ws-work .ws-section-head{display:block}
 .ws-work .ws-section-head>p{margin-top:15px}
 .ws-work-grid{grid-template-columns:1fr;gap:25px}
 .ws-work-card:last-child{grid-column:auto}
 .ws-work-image{height:280px}
 .ws-work-info{display:block;min-height:0}
 .ws-work-info>span{display:block;margin-top:13px}
 .ws-process-compact{padding:68px 7%}
 .ws-process-compact-head{display:block}
 .ws-process-compact-head h2{margin:15px 0}
 .ws-process-compact-head p{margin-top:15px}
 .ws-process-compact-steps{grid-template-columns:1fr 1fr}
 .ws-process-compact-steps>div{min-height:120px;padding:16px 10px 12px 0}
 .ws-process-compact-steps>div:not(:first-child){padding-left:10px}
 .ws-service-hero{padding:55px 7% 80px;min-height:unset}
 .ws-service-browser-content{padding:12px}
 .ws-service-browser-main img{height:145px}
 .ws-service-browser-nav span{display:none}
 .ws-service-browser-foot{font-size:6px}
 .ws-page-visual{min-height:300px}
 .ws-page-window{min-height:220px;padding:18px}
 .ws-dashboard,.ws-price-preview{padding:18px}
 .ws-price-preview strong{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 .ws-hero-showcase,.ws-service-browser,.ws-page-window,.ws-dashboard,.ws-price-preview,.ws-process-compact-steps>div,.ws-work-card,.ws-work-image img{transition:none!important;animation:none!important}
}

/* Scroll entrances are short and quiet; no custom cursor or pointer tracking. */
.ws15-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.2,1);transition-delay:var(--ws15-delay,0ms)}
.ws15-reveal.ws15-visible{opacity:1;transform:translateY(0)}
.photo-frame-fallback{background:linear-gradient(135deg,#d7ddd2,#b6c4b3)!important;min-height:120px}
.photo-unavailable{display:none!important}
@media(prefers-reduced-motion:reduce){.ws15-reveal{opacity:1;transform:none;transition:none}}

/* Remove legacy decorative photo overlays from support-page headers. */
.pagehero:after{display:none!important}

.ws-service-card-image-dashboard{display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(145deg,#26382e,#17271e)}
.ws-service-dashboard-art{width:100%;max-width:420px;padding:18px 20px;background:#f3efe6;color:#26382e;box-shadow:0 18px 40px #0003;transform:rotate(-2deg);transition:transform .5s}
.ws-service-card:hover .ws-service-dashboard-art{transform:rotate(0) translateY(-5px)}
.ws-service-dashboard-art>span,.ws-service-dashboard-art>small{font:7px var(--ws-mono);letter-spacing:.13em;color:#6d796b}
.ws-service-dashboard-art>strong{display:block;margin:15px 0;font:800 clamp(24px,3vw,38px)/.92 var(--ws-sans);letter-spacing:-.08em}
.ws-service-dashboard-art>strong em{font:italic 500 1em var(--ws-serif);color:#c65f40}
.ws-service-dashboard-bars{display:flex;align-items:end;gap:7px;height:52px;border-bottom:1px solid #c8cbbf}
.ws-service-dashboard-bars i{flex:1;height:var(--h,50%);background:#91a38b}
.ws-service-dashboard-bars i:nth-child(1){--h:36%}.ws-service-dashboard-bars i:nth-child(2){--h:68%}.ws-service-dashboard-bars i:nth-child(3){--h:52%}.ws-service-dashboard-bars i:nth-child(4){--h:86%}.ws-service-dashboard-bars i:nth-child(5){--h:62%}.ws-service-dashboard-bars i:nth-child(6){--h:94%}
.ws-service-dashboard-art>small{display:block;margin-top:10px;color:#bf6242}
