/* =====================================================
   ORTOTEK 3.0
   PREMIUM DIGITAL DENTAL CLINIC
===================================================== */


/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}


html{
    scroll-behavior:smooth;
}


body{

    font-family:'Manrope',Arial,sans-serif;

    background:#f8f7f3;

    color:#16191c;

    line-height:1.6;

}



img{

    max-width:100%;

    display:block;

}



a{

    text-decoration:none;

    color:inherit;

}



h1,h2,h3{

    line-height:1.15;

    font-weight:600;

}



h2{

    font-size:48px;

    letter-spacing:-1px;

}



p{

    color:#555;

    font-size:18px;

}







/* =========================
HEADER
========================= */


.header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:90px;

    padding:0 7%;

    display:flex;

    align-items:center;

    justify-content:space-between;


    background:rgba(248,247,243,.85);

    backdrop-filter:blur(20px);

    z-index:1000;

    border-bottom:1px solid rgba(0,0,0,.08);

}



.logo img{

    width:130px;

}




.header nav{

    display:flex;

    gap:35px;

}



.header nav a{

    font-size:14px;

    color:#333;

    transition:.3s;

}



.header nav a:hover{

    color:#b08a52;

}



.call-btn{

    background:#17191b;

    color:white;

    padding:14px 30px;

    border-radius:50px;

    font-size:14px;

}







/* =========================
BUTTONS
========================= */


.gold-btn{

    display:inline-block;

    background:#b08a52;

    color:white;

    padding:18px 40px;

    border-radius:50px;

    margin-top:30px;

    transition:.3s;

}



.gold-btn:hover{

    transform:translateY(-4px);

    box-shadow:
    0 15px 35px rgba(176,138,82,.35);

}



.outline-btn{

    display:inline-block;

    margin-left:15px;

    padding:16px 35px;

    border-radius:50px;

    border:1px solid #222;

}





.premium-label{

    font-size:12px;

    letter-spacing:5px;

    color:#a37b45;

    margin-bottom:25px;

    text-transform:uppercase;

}









/* =========================
HERO
========================= */


.hero{

    min-height:100vh;

    padding:
    150px 7% 80px;


    display:grid;

    grid-template-columns:
    1fr 500px;

    gap:70px;

    align-items:center;

}



.hero h1{

    font-size:72px;

    letter-spacing:-3px;

    margin-bottom:30px;

}



.hero p{

    max-width:650px;

    font-size:21px;

}



.hero-photo{

    position:relative;

}



.hero-photo img{

    height:700px;

    width:100%;

    object-fit:cover;

    border-radius:40px;

}



.doctor-badge{

    position:absolute;

    bottom:30px;

    left:-50px;

    background:white;

    padding:30px;

    width:330px;

    border-radius:25px;

    box-shadow:
    0 25px 70px rgba(0,0,0,.15);

}





.technology{

    display:flex;

    gap:15px;

    margin-top:50px;

}



.technology span{

    padding:10px 18px;

    border:1px solid #ddd;

    border-radius:40px;

    font-size:12px;

}








/* =========================
TRUST
========================= */


.trust{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    background:white;

    padding:70px 7%;

}



.trust div{

    text-align:center;

}



.trust strong{

    font-size:60px;

    display:block;

}



.trust p{

    color:#777;

}








/* =========================
SECTIONS
========================= */


section{

    padding:120px 7%;

}



.section-title span{

    color:#b08a52;

    letter-spacing:4px;

    font-size:12px;

}





.philosophy{

    text-align:center;

    max-width:1000px;

    margin:auto;

}



.philosophy p{

    margin:30px auto;

}








/* =========================
CARDS
========================= */


.problem-grid,
.digital-grid,
.expertise-grid,
.service-grid,
.technology-grid,
.workflow-cards,
.why-grid{


    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:25px;

    margin-top:60px;

}



.problem-grid div,
.digital-grid div,
.expertise-grid div,
.service-grid article,
.workflow-cards div,
.why-grid div{


    background:white;

    padding:35px;

    border-radius:30px;

    transition:.4s;

}



.problem-grid div:hover,
.digital-grid div:hover,
.service-grid article:hover{

    transform:translateY(-8px);

    box-shadow:
    0 20px 50px rgba(0,0,0,.08);

}





/* =========================
DARK BLOCKS
========================= */


.dark-block{

    background:#141719;

    color:white;

    text-align:center;

}



.dark-block p{

    color:#bbb;

}



.large-text{

    max-width:850px;

    margin:40px auto;

    font-size:24px;

}








/* =========================
DOCTOR
========================= */


.doctor-hero{

    padding-top:150px;

    display:grid;

    grid-template-columns:
    450px 1fr;

    gap:80px;

    align-items:center;

}



.doctor-image img{

    border-radius:40px;

}



.doctor-intro h1{

    font-size:60px;

}





.doctor-list div{

    margin:15px 0;

}








/* =========================
CASES
========================= */


.case{

    display:grid;

    grid-template-columns:
    1fr 500px;

    gap:70px;

    align-items:center;

}



.before-after{

    display:grid;

    gap:30px;

}



.before-after img{

    border-radius:25px;

}



.before-after span{

    display:block;

    margin-bottom:10px;

    color:#b08a52;

}





.case-placeholder{

    height:400px;

    border-radius:30px;

    background:#ddd;

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;

}







/* =========================
CONTACT
========================= */


.contact-layout{

    display:grid;

    grid-template-columns:
    1fr 500px;

    gap:80px;

}



.contact-form{

    background:white;

    padding:40px;

    border-radius:35px;

}



.contact-form input,
.contact-form select,
.contact-form textarea{


    width:100%;

    padding:18px;

    margin-bottom:20px;

    border-radius:15px;

    border:1px solid #ddd;

    font-size:16px;

}



.contact-form button{

    width:100%;

    padding:18px;

    border:none;

    border-radius:40px;

    background:#b08a52;

    color:white;

    font-size:17px;

}








/* =========================
FOOTER
========================= */


footer{

    background:#111;

    color:white;

    text-align:center;

    padding:50px;

}



footer img{

    width:120px;

    margin:auto;

}







/* =========================
MOBILE
========================= */


@media(max-width:1000px){


.header nav{

    display:none;

}



.hero,
.doctor-hero,
.case,
.contact-layout{


    grid-template-columns:1fr;

}



.hero h1{

    font-size:45px;

}



.hero-photo img{

    height:auto;

}



.doctor-badge{

    position:relative;

    left:0;

}



.trust{

    grid-template-columns:
    repeat(2,1fr);

    gap:40px;

}



.problem-grid,
.digital-grid,
.expertise-grid,
.service-grid,
.technology-grid,
.workflow-cards,
.why-grid{

    grid-template-columns:1fr;

}



h2{

    font-size:36px;

}



section{

    padding:80px 5%;

}


}

.mobile-menu-button{

display:none;

font-size:30px;

cursor:pointer;

}


@media(max-width:1000px){


.mobile-menu-button{

display:block;

}



.header nav.mobile-open{


display:flex;

position:absolute;

top:90px;

left:0;

width:100%;

background:white;

padding:30px;

flex-direction:column;

text-align:center;


}


}

/* ===========================
   PREMIUM CASES
=========================== */


.cases-filter{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

}



.cases-filter button{

padding:14px 30px;

border-radius:40px;

border:1px solid #ddd;

background:white;

cursor:pointer;

}



.cases-filter .active{

background:#b08a52;

color:white;

}




.premium-case{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}



.premium-case.reverse{

direction:rtl;

}



.premium-case.reverse>*{

direction:ltr;

}



.case-photo-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:20px;

}



.case-photo-grid img{

border-radius:30px;

height:450px;

width:100%;

object-fit:cover;

}



.case-photo-grid span{

display:block;

margin-bottom:10px;

color:#b08a52;

letter-spacing:3px;

}




.case-description h3{

margin-top:30px;

font-size:20px;

}



.case-description li{

margin:10px 0;

}



.case-placeholder{

height:450px;

background:#e7e4dd;

border-radius:35px;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

color:#777;

font-size:22px;

}





@media(max-width:1000px){


.premium-case{

grid-template-columns:1fr;

}


.premium-case.reverse{

direction:ltr;

}


.case-photo-grid{

grid-template-columns:1fr;

}



}

/* ==========================
REVIEWS & TRUST
========================== */


.rating-block{

display:grid;

grid-template-columns:400px 1fr;

gap:70px;

align-items:center;

}



.rating-card{

background:white;

padding:50px;

border-radius:35px;

text-align:center;

box-shadow:
0 20px 60px rgba(0,0,0,.08);

}



.rating-number{

font-size:90px;

font-weight:700;

color:#b08a52;

}



.stars{

color:#b08a52;

font-size:28px;

letter-spacing:5px;

margin:20px 0;

}




.trust-points{

display:grid;

grid-template-columns:1fr 1fr;

gap:30px;

margin-top:40px;

}



.trust-points div{

background:white;

padding:30px;

border-radius:25px;

}




.reviews-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

margin-top:50px;

}



.review-card{

background:white;

padding:35px;

border-radius:30px;

}



.review-card span{

color:#777;

font-size:14px;

}



.safety-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

margin-top:50px;

}



.safety-grid div{

background:white;

padding:35px;

border-radius:30px;

}



.documents-placeholder{

margin-top:40px;

height:300px;

background:#e8e5dd;

border-radius:35px;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

font-size:20px;

color:#777;

}




@media(max-width:1000px){


.rating-block{

grid-template-columns:1fr;

}


.reviews-grid{

grid-template-columns:1fr;

}


.safety-grid{

grid-template-columns:1fr;

}



}

/* ==================================================

ORTOTEK PREMIUM UI 6.0

================================================== */



:root{

--gold:#b08a52;

--dark:#151515;

--cream:#f7f5ef;

--text:#242424;

--radius:32px;

}



/* ==========================
GLOBAL POLISH
========================== */


body{

font-family:'Manrope',Arial,sans-serif;

background:var(--cream);

color:var(--text);

overflow-x:hidden;

}



section{

padding:
110px 8%;

}





h1{

font-size:
clamp(45px,5vw,78px);

line-height:
1.05;

font-weight:600;

letter-spacing:-2px;

}





h2{

font-size:
clamp(34px,3vw,52px);

letter-spacing:-1px;

}





p{

font-size:18px;

line-height:1.7;

color:#555;

}





/* ==========================
PREMIUM HEADER
========================== */


.header{


position:fixed;

top:0;

left:0;

width:100%;

z-index:1000;


padding:
25px 8%;


display:flex;

align-items:center;

justify-content:space-between;


background:

rgba(247,245,239,.75);


backdrop-filter:

blur(20px);


transition:.5s;


}



.header nav a{


position:relative;

text-decoration:none;

color:#222;

margin:0 15px;

font-weight:500;

}



.header nav a:after{


content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--gold);

transition:.4s;

}



.header nav a:hover:after{


width:100%;


}





/* ==========================
PREMIUM BUTTONS
========================== */


.gold-btn,
.call-btn{


display:inline-flex;

align-items:center;

justify-content:center;


padding:
18px 38px;


border-radius:50px;


background:

linear-gradient(
135deg,
#c59a5c,
#98713f
);


color:white!important;


text-decoration:none;


font-weight:600;


box-shadow:

0 20px 40px
rgba(176,138,82,.25);


transition:.4s;


}



.gold-btn:hover,
.call-btn:hover{


transform:

translateY(-5px);


box-shadow:

0 30px 60px
rgba(176,138,82,.35);


}






.outline-btn{


padding:

18px 38px;


border-radius:50px;


border:

1px solid #aaa;


color:#222;


text-decoration:none;


margin-left:15px;


transition:.4s;


}



.outline-btn:hover{


background:#222;

color:white;


}






/* ==========================
HERO PREMIUM
========================== */


.premium-hero{


min-height:100vh;


display:grid;


grid-template-columns:

1fr 0.8fr;


align-items:center;


gap:70px;


padding-top:150px;


}



.hero-photo{


position:relative;


}



.hero-photo img{


width:100%;


border-radius:

50px;


filter:

grayscale(15%);


box-shadow:


0 50px 100px
rgba(0,0,0,.15);


}





.doctor-badge{


position:absolute;


bottom:40px;


left:-40px;


background:

rgba(255,255,255,.85);


backdrop-filter:

blur(20px);


padding:30px;


border-radius:30px;


max-width:300px;


box-shadow:

0 20px 60px
rgba(0,0,0,.15);


}






/* ==========================
GLASS CARDS
========================== */


.digital-grid div,
.service-grid article,
.review-card,
.workflow-cards div{


background:

rgba(255,255,255,.65);


backdrop-filter:

blur(15px);


border:

1px solid rgba(255,255,255,.6);


border-radius:

var(--radius);


padding:40px;


transition:.5s;


}





.digital-grid div:hover,
.service-grid article:hover,
.review-card:hover,
.workflow-cards div:hover{


transform:

translateY(-12px);


box-shadow:

0 30px 80px
rgba(0,0,0,.12);


}





/* ==========================
DARK SECTIONS
========================== */


.dark-block{


background:

#151515;


color:white;


}



.dark-block p{


color:#ccc;


}



.dark-block h2{


color:white;


}







/* ==========================
IMAGE ANIMATION
========================== */


.hero-photo img{


animation:

floatImage 8s ease-in-out infinite;


}



@keyframes floatImage{


0%,100%{


transform:
translateY(0);


}


50%{


transform:
translateY(-15px);


}


}







/* ==========================
SCROLL EFFECT
========================== */


section{


animation:

sectionShow .8s ease;


}



@keyframes sectionShow{


from{


opacity:0;


transform:
translateY(30px);


}



to{


opacity:1;


transform:
translateY(0);


}



}








/* ==========================
MOBILE PREMIUM
========================== */


@media(max-width:1000px){



section{


padding:

70px 25px;


}



.header{


padding:

20px;


}



.header nav{


display:none;


}




.premium-hero{


grid-template-columns:

1fr;


padding-top:120px;


}



.hero-photo{


order:-1;


}



.doctor-badge{


left:10px;


bottom:20px;


}




h1{


font-size:42px;


}



.gold-btn,
.outline-btn{


width:100%;


margin:10px 0;


}



.digital-grid,
.service-grid,
.workflow-cards{


grid-template-columns:

1fr;


}


}