:root{--orange:#f17920;--orange-dark:#cf5f12;--dark:#171717;--carbon:#25211f;--text:#2e2e2e;--soft:#f7f3ef;--line:#ebe3dc;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.65}img{max-width:100%}a{color:inherit}.container{width:min(1180px,92%);margin-inline:auto}.narrow{max-width:900px}.center{text-align:center}.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 35px rgba(0,0,0,.06)}.nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{height:68px;width:auto;display:block;object-fit:contain}.main-nav{display:flex;align-items:center;gap:23px}.main-nav a{text-decoration:none;font-weight:800;color:#1f1f1f}.main-nav a:not(.btn):hover{color:var(--orange)}.nav-toggle{display:none;border:0;background:#fff;font-size:30px;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:var(--orange);border:2px solid var(--orange);color:#fff;border-radius:999px;text-decoration:none;font-weight:900;cursor:pointer;transition:.22s}.btn:hover{background:var(--orange-dark);border-color:var(--orange-dark);transform:translateY(-1px)}.btn-small{padding:9px 16px}.btn-outline{background:transparent;border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:var(--dark);border-color:#fff}.section{padding:82px 0}.section-soft{background:var(--soft)}.section-dark,.why-section{background:linear-gradient(135deg,var(--dark),#3a332f);color:#fff}.hero{padding:88px 0}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.eyebrow{display:inline-block;color:var(--orange);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;margin-bottom:10px}h1,h2,h3{color:inherit;line-height:1.1}h1{font-size:clamp(2.2rem,5.4vw,4.8rem);margin:10px 0 18px}h2{font-size:clamp(1.9rem,3vw,3rem);margin:0 0 18px}h3{font-size:1.22rem;margin:0 0 10px}.hero-copy p{font-size:1.16rem;max-width:720px;color:#f2ede8}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-visual{position:relative;border-radius:34px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.32);min-height:380px}.hero-visual img{width:100%;height:100%;min-height:380px;object-fit:cover;display:block}.hero-badge{position:absolute;left:22px;bottom:22px;background:rgba(255,255,255,.92);color:#1d1d1d;border-radius:20px;padding:14px 18px;display:grid;box-shadow:0 12px 30px rgba(0,0,0,.2)}.section-head{max-width:820px;margin-bottom:36px}.section-head p{margin-top:0}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:40px}.feature-card,.service-card,.gallery-card,.contact-card,.map-card,.quote-form,.admin-card{background:#fff;color:var(--text);border:1px solid var(--line);border-radius:26px;box-shadow:0 15px 42px rgba(0,0,0,.06)}.feature-card{padding:26px;transition:.25s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(0,0,0,.11)}.feature-icon{width:58px;height:58px;border-radius:18px;background:var(--orange);color:#fff;display:grid;place-items:center;font-weight:900;font-size:1.05rem;margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:28px;position:relative;overflow:hidden;border-left:6px solid var(--orange)}.service-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--soft);color:var(--orange);font-weight:900;margin-bottom:18px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.gallery-card{overflow:hidden;padding:0}.gallery-image-button{display:block;width:100%;border:0;padding:0;background:none;cursor:pointer;overflow:hidden}.gallery-image-button img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:.35s}.gallery-card:hover img{transform:scale(1.07)}.gallery-body{padding:18px 18px 20px}.gallery-body p{margin:0}.why-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:start}.why-grid p{font-size:1.08rem;color:#f3eee9}.why-points{display:grid;gap:14px}.why-points div{display:flex;align-items:center;gap:15px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:18px}.why-points strong{color:var(--orange);font-size:1.35rem}.quote-form{padding:30px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}input,select,textarea{width:100%;border:1px solid #ddd;border-radius:15px;padding:14px 15px;font:inherit;background:#fff;color:#222}textarea{min-height:160px;margin:14px 0;resize:vertical}.form-note{color:#666;font-size:.92rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.contact-card{padding:32px}.contact-card a{text-decoration:none}.socials{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.socials a{background:var(--dark);color:#fff;text-decoration:none;border-radius:999px;padding:10px 15px;font-weight:800}.map-card{padding:0;overflow:hidden;min-height:390px}.map-card iframe{width:100%;height:100%;min-height:390px;border:0;display:block}.footer{background:#101010;color:#fff;padding:28px 0}.footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer a{color:#fff}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:100;display:none;align-items:center;justify-content:center;padding:28px}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:86vh;border-radius:18px;box-shadow:0 20px 60px #000}.lightbox button{position:absolute;top:18px;right:26px;color:#fff;background:transparent;border:0;font-size:44px;cursor:pointer}.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-sidebar{background:#151515;color:#fff;padding:24px}.admin-sidebar a{display:block;color:#fff;text-decoration:none;padding:11px 12px;border-radius:12px;margin:4px 0}.admin-sidebar a:hover{background:#2d2d2d}.admin-main{padding:34px;background:#f7f3ef}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.admin-card{padding:20px}.admin-table{width:100%;border-collapse:collapse;background:#fff}.admin-table th,.admin-table td{border:1px solid #ddd;padding:10px;text-align:left;vertical-align:top}.json-editor{min-height:540px;font-family:ui-monospace,Consolas,monospace}.alert{padding:12px 14px;border-radius:12px;background:#e8fff0;color:#14652f;margin-bottom:18px}@media(max-width:980px){.main-nav{position:absolute;top:92px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:flex-start;padding:20px 4%;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.nav-toggle{display:block}.hero-grid,.why-grid,.contact-grid{grid-template-columns:1fr}.feature-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr 1fr}.admin-layout{display:block}.admin-grid{grid-template-columns:1fr}}@media(max-width:620px){.nav-wrap{height:78px}.brand img{height:56px}.main-nav{top:78px}.section{padding:58px 0}.hero{padding:60px 0}.feature-grid,.service-grid,.gallery-grid,.form-grid{grid-template-columns:1fr}.hero-visual,.hero-visual img{min-height:260px}.footer-grid{display:block}}
/* Surgical update: professional feature icons, real social logos, floating contact */
.feature-icon{background:linear-gradient(145deg,#fff,#fff7f1);border:1px solid rgba(241,121,32,.22);box-shadow:0 14px 30px rgba(241,121,32,.12);color:var(--orange);font-size:0;}
.feature-icon svg{width:32px;height:32px;display:block;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.feature-icon svg path:first-child:not(:only-child),.feature-icon svg circle{fill:rgba(241,121,32,.10);}
.feature-icon-experience svg path:first-child,.feature-icon-quality svg path:first-child{fill:rgba(241,121,32,.12);}
.feature-icon-quality{color:#1f1f1f;background:linear-gradient(145deg,#fff,#fff8f0);}
.feature-icon-deadline{color:#f17920;}
.feature-icon-availability{color:#202020;background:linear-gradient(145deg,#fff,#fff6ed);}
.socials{align-items:center;gap:10px;}
.socials a.social-link{width:46px;height:46px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#151515;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.14);transition:.2s;}
.socials a.social-link:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.2);}
.socials a.social-link span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.socials a.social-link svg{width:23px;height:23px;display:block;fill:currentColor;stroke:none;}
.socials a.instagram svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.socials a.facebook{background:#1877f2;}
.socials a.instagram{background:radial-gradient(circle at 30% 110%,#fdf497 0,#fdf497 12%,#fd5949 38%,#d6249f 62%,#285AEB 100%);}
.socials a.tiktok{background:#050505;}
.floating-contact{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;flex-direction:column;gap:12px;}
.floating-btn{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.24);transition:.2s;}
.floating-btn:hover{transform:translateY(-3px) scale(1.03);}
.floating-btn svg{width:27px;height:27px;fill:currentColor;display:block;}
.floating-call{background:var(--orange);}
.floating-whatsapp{background:#25D366;}
@media(max-width:620px){.floating-contact{right:14px;bottom:14px}.floating-btn{width:52px;height:52px}.floating-btn svg{width:24px;height:24px}}

/* Surgical update: geometric oversized gallery + customer reviews */
.gallery-grid{grid-template-columns:repeat(3,1fr);gap:34px;align-items:start;}
.gallery-card{position:relative;overflow:visible;background:transparent;border:0;box-shadow:none;}
.gallery-card::before{content:"";position:absolute;inset:18px -10px 62px 18px;background:linear-gradient(145deg,rgba(241,121,32,.18),rgba(23,23,23,.08));clip-path:polygon(8% 0,100% 7%,92% 92%,0 100%);z-index:0;}
.gallery-image-button{position:relative;z-index:1;border-radius:0;clip-path:polygon(9% 0,100% 6%,91% 100%,0 90%);box-shadow:0 26px 58px rgba(0,0,0,.18);background:#111;}
.gallery-image-button img{aspect-ratio:1.18/1;min-height:330px;filter:saturate(1.02) contrast(1.02);}
.gallery-card:nth-child(2n) .gallery-image-button{clip-path:polygon(0 8%,92% 0,100% 88%,10% 100%);}
.gallery-card:nth-child(3n) .gallery-image-button{clip-path:polygon(12% 0,100% 0,88% 100%,0 86%);}
.gallery-card:nth-child(4n) .gallery-image-button{clip-path:polygon(0 0,92% 10%,100% 100%,8% 90%);}
.gallery-body{position:relative;z-index:2;margin:-38px 18px 0 34px;padding:20px 22px 22px;background:rgba(255,255,255,.96);border:1px solid rgba(235,227,220,.95);border-left:5px solid var(--orange);border-radius:20px;box-shadow:0 18px 42px rgba(0,0,0,.12);}
.gallery-body h3{font-size:1.28rem;}
.gallery-card:hover .gallery-image-button img{transform:scale(1.045);}
.reviews-section{background:linear-gradient(180deg,#fff,var(--soft));}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:34px;}
.review-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 18px 48px rgba(0,0,0,.07);overflow:hidden;}
.review-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:var(--orange);}
.review-card p{font-size:1.02rem;margin:12px 0 22px;color:#333;}
.stars{color:var(--orange);font-size:1.35rem;letter-spacing:.08em;font-weight:900;line-height:1;}
.review-author{display:grid;gap:2px;}
.review-author strong{color:#171717;}
.review-author span{color:#6b625c;font-size:.93rem;}
.featured-review{transform:translateY(-10px);box-shadow:0 26px 64px rgba(0,0,0,.11);}
@media(max-width:980px){.gallery-grid{grid-template-columns:repeat(2,1fr);gap:28px}.gallery-image-button img{min-height:290px}.reviews-grid{grid-template-columns:1fr}.featured-review{transform:none}}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-image-button img{min-height:310px;aspect-ratio:1/1.08}.gallery-body{margin:-34px 12px 0 22px}.reviews-grid{gap:18px}.review-card{padding:24px}.section-head.center{text-align:left}}


/* Surgical update: customer review submission + footer credit */
.review-submit-card{margin-top:34px;background:#171717;color:#fff;border-radius:30px;padding:34px;display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:start;box-shadow:0 22px 60px rgba(0,0,0,.13);}
.review-submit-card h3{font-size:1.55rem;margin:0 0 10px;}
.review-submit-card p{color:#eee;margin:0;}
.review-form{display:grid;gap:14px;}
.review-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rating-field{border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:14px 16px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.rating-field legend{padding:0 8px;color:#f6c088;font-weight:900;}
.rating-field label{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);border-radius:999px;padding:9px 12px;cursor:pointer;}
.rating-field input{width:auto;accent-color:var(--orange);}
.rating-field span{color:#f6b13f;letter-spacing:1px;font-weight:900;}
.review-form textarea{margin:0;min-height:118px;}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.developer-credit{font-weight:800;color:#f6b13f;}
@media(max-width:860px){.review-submit-card{grid-template-columns:1fr;padding:26px}.review-form-grid{grid-template-columns:1fr}}


/* Surgical header brand-name + tel fix */
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;min-width:0;}
.brand-name{font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.05rem,1.55vw,1.42rem);font-weight:900;letter-spacing:.01em;color:#1b1b1b;line-height:1.05;white-space:nowrap;}
@media(max-width:620px){.brand{gap:9px;max-width:70vw}.brand-name{font-size:1rem;white-space:normal;max-width:115px}}

/* Surgical admin UX update: user-friendly form editor */
.admin-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.admin-kicker{margin:0 0 6px;color:var(--orange);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.admin-dark-outline{color:#171717!important;border-color:#171717!important}.admin-form-ui{display:grid;gap:22px}.admin-panel{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 15px 42px rgba(0,0,0,.05)}.admin-panel h2{font-size:1.45rem;margin-bottom:18px;color:#171717}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-field{display:grid;gap:7px}.admin-field span{font-weight:900;color:#25211f}.admin-field small{color:#777}.admin-field input,.admin-field select,.admin-field textarea{border-radius:14px;background:#fff}.admin-field-full{grid-column:1/-1}.admin-box-row{border:1px solid var(--line);border-radius:20px;padding:18px;background:#faf7f3}.admin-check{display:inline-flex;align-items:center;gap:9px;margin-top:14px;font-weight:800;color:#25211f}.admin-check input{width:auto}.admin-repeat-list{display:grid;gap:18px}.admin-repeat-card{border:1px solid var(--line);border-radius:22px;padding:18px;background:#fbf8f5}.admin-repeat-card h3{color:#171717;margin-bottom:14px}.admin-gallery-row{display:grid;gap:14px}.admin-thumb{width:min(260px,100%);height:150px;object-fit:cover;border-radius:18px;border:1px solid var(--line);background:#fff}.admin-upload{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:12px 18px;border-radius:999px;background:#171717;color:#fff;font-weight:900;cursor:pointer}.admin-upload input{display:none}.admin-savebar{position:sticky;bottom:0;display:flex;gap:12px;align-items:center;background:rgba(247,243,239,.92);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:16px 0;margin-top:6px;z-index:3}.admin-advanced{margin-top:26px;background:#fff;border:1px dashed #c8beb6;border-radius:18px;padding:16px}.admin-advanced summary{cursor:pointer;font-weight:900;color:#171717}.admin-sidebar h2{line-height:1.15}.admin-sidebar a{font-weight:800}@media(max-width:760px){.admin-title-row{display:block}.admin-form-grid{grid-template-columns:1fr}.admin-main{padding:22px}.admin-savebar{flex-wrap:wrap}.admin-panel{padding:18px}}


/* Surgical update: real gallery frame + shadow depth */
.gallery-card{
    position:relative;
    overflow:visible;
    background:transparent;
    border:0;
    box-shadow:none;
}
.gallery-card::before{
    content:"";
    position:absolute;
    inset:14px -12px 56px 14px;
    background:linear-gradient(145deg,#f17920,#171717 72%);
    clip-path:polygon(8% 0,100% 7%,92% 92%,0 100%);
    z-index:0;
    filter:drop-shadow(0 24px 34px rgba(0,0,0,.38));
    opacity:.96;
}
.gallery-image-button{
    position:relative;
    z-index:1;
    background:#171717;
    padding:4px;
    clip-path:polygon(9% 0,100% 6%,91% 100%,0 90%);
    box-shadow:
        0 22px 45px rgba(0,0,0,.34),
        0 8px 16px rgba(241,121,32,.20);
    transition:transform .30s ease, box-shadow .30s ease, filter .30s ease;
}
.gallery-image-button::before{
    content:"";
    position:absolute;
    inset:0;
    background:#f17920;
    clip-path:inherit;
    z-index:-1;
}
.gallery-image-button img{
    width:100%;
    aspect-ratio:1.18/1;
    min-height:330px;
    object-fit:cover;
    display:block;
    clip-path:inherit;
    border:2px solid #171717;
    filter:saturate(1.04) contrast(1.04);
}
.gallery-card:hover .gallery-image-button{
    transform:translateY(-7px);
    box-shadow:
        0 32px 62px rgba(0,0,0,.48),
        0 0 0 3px rgba(241,121,32,.95),
        0 0 22px rgba(241,121,32,.32);
}
.gallery-card:hover::before{
    filter:drop-shadow(0 30px 42px rgba(0,0,0,.48));
}
.gallery-card:nth-child(2n) .gallery-image-button,
.gallery-card:nth-child(2n) .gallery-image-button img{
    clip-path:polygon(0 8%,92% 0,100% 88%,10% 100%);
}
.gallery-card:nth-child(3n) .gallery-image-button,
.gallery-card:nth-child(3n) .gallery-image-button img{
    clip-path:polygon(12% 0,100% 0,88% 100%,0 86%);
}
.gallery-card:nth-child(4n) .gallery-image-button,
.gallery-card:nth-child(4n) .gallery-image-button img{
    clip-path:polygon(0 0,92% 10%,100% 100%,8% 90%);
}
.gallery-body{
    position:relative;
    z-index:2;
    margin:-38px 18px 0 34px;
    padding:20px 22px 22px;
    background:rgba(255,255,255,.97);
    border:1px solid rgba(23,23,23,.13);
    border-left:5px solid #f17920;
    border-radius:20px;
    box-shadow:0 18px 42px rgba(0,0,0,.16);
}
@media(max-width:620px){
    .gallery-image-button img{min-height:310px;aspect-ratio:1/1.08}
    .gallery-card::before{inset:12px -8px 52px 12px}
}


/* FINAL SURGICAL FIX: restore normal header + stable hero image layout */
.site-header .nav-wrap{height:92px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:22px !important;}
.site-header .brand{display:inline-flex !important;align-items:center !important;gap:12px !important;text-decoration:none !important;min-width:0 !important;max-width:360px !important;flex:0 1 auto !important;}
.site-header .brand img{height:68px !important;max-height:68px !important;width:auto !important;max-width:155px !important;object-fit:contain !important;display:block !important;flex:0 0 auto !important;}
.site-header .brand-name{font-family:Arial,Helvetica,sans-serif !important;font-size:1.22rem !important;font-weight:900 !important;line-height:1.05 !important;color:#1b1b1b !important;letter-spacing:.01em !important;white-space:normal !important;max-width:150px !important;}
.site-header .nav-toggle{flex:0 0 auto !important;margin-left:auto !important;}
.hero-visual img{object-fit:cover !important;object-position:center center !important;}
@media(max-width:980px){.site-header .main-nav{top:92px !important;}}
@media(max-width:620px){
  .site-header .nav-wrap{height:78px !important;gap:10px !important;}
  .site-header .brand{gap:8px !important;max-width:calc(100% - 54px) !important;}
  .site-header .brand img{height:56px !important;max-height:56px !important;max-width:132px !important;}
  .site-header .brand-name{font-size:.96rem !important;line-height:1.05 !important;max-width:112px !important;}
  .site-header .main-nav{top:78px !important;}
}
