/* The portrait is an independent transparent image, fitted without cropping. */
.hero:before,.hero:after{display:none}.hero-sculpture{position:absolute;z-index:0;top:12px;right:0;width:57%;height:calc(100% - 12px);object-fit:contain;object-position:right bottom;pointer-events:none}
.layout-edit-toggle{position:fixed;z-index:10002;bottom:18px;left:18px;border:1px solid #c49c52;border-radius:24px;background:#fffaf0;color:#303440;padding:12px 18px;font:600 13px Arial;cursor:pointer;box-shadow:0 4px 20px #20243630}
.layout-editor{position:fixed;z-index:10001;top:16px;right:16px;width:285px;max-height:calc(100dvh - 90px);overflow:auto;padding:18px;background:#fffaf5;color:#303440;border:1px solid #c49c52;border-radius:14px;box-shadow:0 10px 40px #15192844;font:13px/1.5 Arial}
.layout-editor[hidden],.layout-selection[hidden]{display:none}.layout-editor h3{font-size:17px;margin:0 0 6px}.layout-editor p{font-size:11px;color:#6b6e79;margin:0 0 12px}.layout-editor label{display:block;margin:10px 0}.layout-editor label>span{display:flex;justify-content:space-between;margin-bottom:4px}.layout-editor select,.layout-editor input[type=number]{width:100%;padding:8px;border:1px solid #c9c4b8;border-radius:6px;background:#fff;color:#303440;font:13px Arial}.layout-editor input[type=range]{width:100%;accent-color:#ae8238}.layout-editor input[type=color]{width:100%;height:32px;border:1px solid #ccc;border-radius:6px;background:#fff}.layout-editor .editor-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.layout-editor button{padding:8px;border:1px solid #c5aa71;border-radius:6px;background:#fff;color:#303440;font:12px Arial;cursor:pointer}.layout-editor .editor-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.layout-editor .editor-save{background:#e9c77d}.layout-editor .editor-status{display:block;margin-top:10px;font-size:11px;min-height:30px;color:#6b624f}
.layout-selection{position:fixed;z-index:10000;border:2px dashed #e6b34f;cursor:move;touch-action:none;box-shadow:0 0 0 1px #34394b55;pointer-events:auto}.layout-selection>span{position:absolute;left:0;top:-24px;padding:2px 7px;background:#ffe4a5;color:#2f3340;font:11px Arial;white-space:nowrap}.layout-resize{position:absolute;right:-7px;bottom:-7px;width:16px;height:16px;background:#e6b34f;border:2px solid white;border-radius:3px;cursor:nwse-resize;touch-action:none}
body.layout-editing [data-layout-key]{cursor:move;touch-action:none}body.layout-editing .hero-sculpture{pointer-events:auto}body.layout-editing .hero{overflow:visible}
@media(max-width:900px){.hero-sculpture{width:75%;opacity:.8}.layout-editor{width:265px}}
@media(max-width:540px){.hero-sculpture{width:100%;opacity:.7}.layout-editor{top:10px;right:10px;width:250px;max-height:65dvh}.layout-edit-toggle{bottom:14px;left:14px;padding:10px 14px}}
/* Move navigation links and CTA together while keeping the logo independent. */
.hero-menu-group{display:flex;align-items:center;gap:34px;margin-left:auto;min-width:0}.hero-menu-group nav{margin-left:0}.hero-menu-group .outline{flex:none}
@media(min-width:901px){.nav{translate:-6px 3px}}
@media(max-width:900px){.hero-menu-group{margin-left:0}.hero-menu-group>.outline{display:none}}
.service-editor-controls{border:1px solid #d6c49c;border-radius:8px;margin:16px 0 0;padding:10px}.service-editor-controls[hidden]{display:none}.service-editor-controls legend{font-weight:700;padding:0 5px}.service-editor-controls button{width:100%}
.custom-service-style .service-item{background:var(--se-cardBackground)!important;font-family:var(--se-font);color:var(--se-titleColor)}
.custom-service-style .service-item h3{font-size:var(--se-titleSize);color:var(--se-titleColor)}
.custom-service-style .service-item .service-estimate{font-size:var(--se-detailSize);color:var(--se-detailColor)}
.custom-service-style .service-item .service-estimate strong{font-size:var(--se-priceSize);color:var(--se-priceColor)}
.custom-service-style .service-item svg{stroke:var(--se-iconColor);transition:transform .25s}
.custom-service-style .service-item>b{border-color:var(--se-iconColor);color:var(--se-iconColor)}
.custom-service-style .service-item:is(:hover,:focus-visible),.custom-service-style.preview-service-hover .service-item{background:var(--se-hoverBackground)!important;transform:translateY(calc(-1 * var(--se-lift)));filter:brightness(var(--se-hoverBrightness))}
.custom-service-style .service-item:is(:hover,:focus-visible) svg,.custom-service-style.preview-service-hover .service-item svg{transform:translateX(var(--se-iconMove))}
.custom-service-style .service-item:is(:hover,:focus-visible)>b,.custom-service-style.preview-service-hover .service-item>b{background:var(--se-iconColor);color:#303440;transform:translateX(var(--se-iconMove))}
@media(prefers-reduced-motion:reduce){.custom-service-style .service-item,.custom-service-style .service-item svg,.custom-service-style .service-item>b{transition:none}}
/* The service row can cross the section boundary without being clipped. */
.hero{overflow:visible;z-index:2}.hero-portrait-stage{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.hero-portrait-stage .hero-sculpture{pointer-events:none}body.layout-editing .hero-portrait-stage{overflow:hidden}
#works{padding-top:calc(82px + var(--editor-portfolio-gap,160px))}#works>.shell{max-width:none;width:min(1400px,calc(100% - 40px))}
@media(max-width:650px){#works{padding-top:calc(62px + var(--editor-portfolio-gap,40px))}#works>.shell{width:calc(100% - 28px)}}

.hero[data-custom-height] .hero-grid{min-height:0}
/* Quiet gold hover states on both navigation groups. */
.hero-menu-group nav a{position:relative;transition:color .2s}.hero-menu-group nav a:after{content:'';position:absolute;left:0;right:0;bottom:-9px;height:2px;background:#e4ad43;transform:scaleX(0);transform-origin:left;transition:transform .2s}.hero-menu-group nav a:is(:hover,:focus-visible){color:#ffe0a1}.hero-menu-group nav a:is(:hover,:focus-visible):after{transform:scaleX(1)}.hero-menu-group>.outline{transition:background .2s,color .2s,box-shadow .2s}.hero-menu-group>.outline:is(:hover,:focus-visible){background:#e4ad431f;box-shadow:0 0 0 2px #e4ad4320;color:#ffe0a1}
.service-track .service-item{border-radius:10px;transition:background .22s,box-shadow .22s,filter .22s}.service-track .service-item:is(:hover,:focus-visible),.preview-service-hover .service-item{box-shadow:inset 0 0 0 1px #b6934a50,0 5px 16px #4f526410}.service-track .service-item:focus-visible{outline:2px solid #b18b42;outline-offset:3px}
#works .portfolio-carousel-frame{padding:0}.portfolio-swipe-indicators{display:none}
@media(min-width:901px){#works>.shell{width:min(1400px,calc(100% - 144px))}#works .portfolio-carousel-frame .studio-carousel-arrow:first-child{left:-60px}#works .portfolio-carousel-frame .studio-carousel-arrow:last-child{right:-60px}#works .portfolio-carousel-frame .studio-carousel-arrow{width:40px;height:40px;top:30%;box-shadow:none}#works .portfolio-carousel-frame .studio-carousel-arrow:hover{background:#eedfbf}}
@media(max-width:900px){#works .portfolio-carousel-frame .studio-carousel-arrow{display:none}.portfolio-swipe-indicators{display:flex;justify-content:center;gap:8px;margin-top:18px}.portfolio-swipe-indicators button{width:42px;height:22px;padding:9px 0;border:0;background:transparent;cursor:pointer}.portfolio-swipe-indicators button:before{content:'';display:block;height:4px;border-radius:8px;background:#c6c2b8;transition:background .2s}.portfolio-swipe-indicators button[aria-current=true]:before{background:#ad873e}.portfolio-swipe-indicators button:focus-visible{outline:2px solid #ad873e;outline-offset:2px;border-radius:5px}}
@media(prefers-reduced-motion:reduce){.hero-menu-group nav a:after,.service-track .service-item,.portfolio-swipe-indicators button:before{transition:none}}
