@import url("/assets/practice-areas.css?v=20260916-legalos1");

/* Homepage-specific layer. Desktop hero remains governed by hero-fix.css. */
.mobile-legal-os{display:none}
.hero-lead-mobile{display:none}

@media(max-width:760px){
  body.page-home .site-header{display:none!important}
  body.page-home main#main-content{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}

  .home-top-shell{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:#d7c4aa;
    color:#221a14;
  }
  .home-top-shell::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:url("/assets/hero-office-family-mobile.webp") center 38%/cover no-repeat;
    transform:scale(1.01);
  }
  .home-top-shell::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:
      radial-gradient(circle at 74% 27%,rgba(255,235,203,.28) 0%,transparent 42%),
      linear-gradient(180deg,rgba(249,242,231,.74) 0%,rgba(239,226,207,.74) 43%,rgba(79,58,40,.34) 100%);
  }

  /* One semantic hero/H1 is shared by desktop and mobile. */
  body.page-home .home-top-shell .hero-shell{
    display:block!important;
    position:relative;
    z-index:1;
    padding:0;
    background:transparent;
  }
  body.page-home .home-top-shell .hero-artwork{
    display:block!important;
    height:auto;
    min-height:0;
    overflow:visible;
    border:0;
    background:transparent;
  }
  body.page-home .home-top-shell .hero-artwork::after,
  body.page-home .home-top-shell .hero-artwork picture,
  body.page-home .home-top-shell .featured-study,
  body.page-home .home-top-shell .hero-wall-actions{
    display:none!important;
  }
  body.page-home .home-top-shell .hero-wall-copy{
    position:relative;
    left:auto;
    top:auto;
    transform:none;
    width:min(100%,580px);
    margin:0 auto;
    padding:calc(22px + env(safe-area-inset-top,0px)) 20px 18px;
    background:transparent;
    color:#221a14;
  }
  body.page-home .home-top-shell .hero-brand{margin:0 0 18px}
  body.page-home .home-top-shell .hero-brand-name{
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:18px;
    line-height:1;
    font-weight:600;
    letter-spacing:.05em;
    color:#221a14;
  }
  body.page-home .home-top-shell .hero-brand-specialty{
    margin-top:7px;
    font:600 10px/1.35 Inter,Arial,sans-serif;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#6e5334;
  }
  body.page-home .home-top-shell .hero-wall-copy h1{
    max-width:520px;
    margin:0;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:24px;
    line-height:1.15;
    font-weight:600;
    letter-spacing:-.02em;
    text-wrap:balance;
    color:#221810;
  }
  body.page-home .home-top-shell .hero-wall-copy>p{
    max-width:520px;
    margin:11px 0 0;
    font:13px/1.5 Inter,Arial,sans-serif;
    color:#524235;
  }
  .hero-lead-desktop{display:none}
  .hero-lead-mobile{display:inline}

  /* Motto remains a compact brand principle without turning the mobile hero into a marketing block. */
  body.page-home .home-top-shell .hero-motto-block{
    max-width:520px;
    margin-top:14px;
    padding:9px 0 0;
    border:0;
    border-top:1px solid rgba(72,52,35,.22);
  }
  body.page-home .home-top-shell .hero-motto-latin{
    font:700 9px/1.3 Inter,Arial,sans-serif;
    letter-spacing:.16em;
    color:#765326;
  }
  body.page-home .home-top-shell .hero-motto-tr{
    margin-top:3px;
    font-family:'Cormorant Garamond',Georgia,serif;
    font-size:14px;
    line-height:1.25;
    font-weight:500;
    color:#3f3024;
  }

  .mobile-legal-os{
    display:block;
    position:relative;
    z-index:2;
    width:100%;
    padding:0 12px calc(102px + env(safe-area-inset-bottom,0px));
    color:#221a14;
    box-sizing:border-box;
  }
  .mos-shell{
    width:100%;
    max-width:440px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:12px;
  }

  /* Spotlight */
  .mos-search-shell{display:grid;gap:9px}
  .mos-spotlight{
    display:flex;
    align-items:center;
    gap:10px;
    width:100%;
    min-height:52px;
    padding:0 15px;
    border:1px solid rgba(130,103,74,.24);
    border-radius:19px;
    background:rgba(255,252,246,.89);
    box-shadow:0 9px 25px rgba(48,33,20,.10),inset 0 1px 0 rgba(255,255,255,.88);
    backdrop-filter:blur(22px) saturate(125%);
    -webkit-backdrop-filter:blur(22px) saturate(125%);
    box-sizing:border-box;
  }
  .mos-spotlight svg{flex:0 0 auto;width:19px;height:19px;color:#966d38}
  .mos-spotlight input{
    min-width:0;
    flex:1;
    border:0;
    padding:0;
    outline:0;
    background:transparent;
    font:500 14px/1.35 Inter,Arial,sans-serif;
    color:#261d15;
  }
  .mos-spotlight input::placeholder{color:#827263;opacity:1}
  .mos-spotlight:focus-within{outline:2px solid rgba(117,78,35,.55);outline-offset:2px}
  .mos-chips{
    display:flex;
    gap:7px;
    overflow-x:auto;
    padding:0 1px 2px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .mos-chips::-webkit-scrollbar{display:none}
  .mos-chip{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    flex:0 0 auto;
    padding:0 11px;
    border:1px solid rgba(118,86,51,.22);
    border-radius:999px;
    background:rgba(250,246,239,.76);
    color:#594533;
    font:600 11px/1 Inter,Arial,sans-serif;
    text-decoration:none;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  /* Shared glass tile */
  .mos-tile{
    display:block;
    box-sizing:border-box;
    border:1px solid rgba(255,255,255,.73);
    border-radius:22px;
    background:rgba(250,246,239,.88);
    box-shadow:0 10px 28px rgba(49,33,20,.10),inset 0 1px 0 rgba(255,255,255,.88);
    color:#221a14;
    text-decoration:none;
    backdrop-filter:blur(21px) saturate(125%);
    -webkit-backdrop-filter:blur(21px) saturate(125%);
    transition:transform 140ms ease,box-shadow 140ms ease,border-color 140ms ease;
  }
  .mos-tile:active{transform:scale(.97);box-shadow:0 4px 14px rgba(49,33,20,.08)}
  .mos-tile:focus-visible,.mos-chip:focus-visible,.mos-dock-item:focus-visible{
    outline:2px solid #68471f;
    outline-offset:3px;
  }

  /* Primary risk widget */
  .mos-widget-primary{padding:18px}
  .mos-widget-label{
    display:flex;
    align-items:center;
    gap:7px;
    color:#8f530f;
    font:700 10px/1.3 Inter,Arial,sans-serif;
    letter-spacing:.12em;
    text-transform:uppercase;
  }
  .mos-widget-label svg{width:16px;height:16px;flex:0 0 auto}
  .mos-widget-primary h2{
    margin:11px 0 7px;
    font:700 17px/1.3 Inter,Arial,sans-serif;
    color:#22170f;
  }
  .mos-widget-primary p{
    margin:0;
    font:400 13px/1.55 Inter,Arial,sans-serif;
    color:#48392d;
  }
  .mos-widget-action{
    display:flex;
    align-items:center;
    gap:7px;
    min-height:44px;
    margin-top:13px;
    padding-top:11px;
    border-top:1px solid rgba(112,79,46,.18);
    color:#81501a;
    font:700 12px/1.3 Inter,Arial,sans-serif;
  }
  .mos-widget-action svg{width:15px;height:15px}

  /* Two-column launcher grid */
  .mos-app-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  .mos-app-box{
    min-width:0;
    min-height:142px;
    padding:15px 14px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
  }
  .mos-app-icon{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    margin-bottom:14px;
    border:1px solid rgba(95,68,42,.12);
    border-radius:13px;
    background:rgba(234,221,202,.64);
    color:#745021;
  }
  .mos-app-icon svg{width:20px;height:20px}
  .mos-app-box[data-tone="rose"] .mos-app-icon{background:#f1dfd7;color:#7a3a2b}
  .mos-app-box[data-tone="amber"] .mos-app-icon{background:#f3e4ca;color:#7b511d}
  .mos-app-box[data-tone="earth"] .mos-app-icon{background:#e8ddc7;color:#68512f}
  .mos-app-box[data-tone="sky"] .mos-app-icon{background:#dde7e8;color:#36565a}
  .mos-app-box[data-tone="green"] .mos-app-icon{background:#dfe9df;color:#345b3d}
  .mos-app-box[data-tone="gold"] .mos-app-icon{background:#eee3c4;color:#725a1e}
  .mos-app-box[data-tone="indigo"] .mos-app-icon{background:#e1e2eb;color:#434760}
  .mos-app-box[data-tone="neutral"] .mos-app-icon{background:#e7e0d7;color:#594b3f}
  .mos-app-box h3{
    margin:0;
    font:700 14px/1.25 Inter,Arial,sans-serif;
    color:#22170f;
  }
  .mos-app-sub{
    display:block;
    margin-top:5px;
    color:#675548;
    font:500 11px/1.42 Inter,Arial,sans-serif;
  }

  /* Homepage-only dock: markup only exists on the homepage. */
  .mos-dock{
    position:fixed;
    left:50%;
    bottom:calc(10px + env(safe-area-inset-bottom,0px));
    z-index:120;
    width:calc(100% - 24px);
    max-width:406px;
    transform:translateX(-50%);
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:2px;
    padding:7px;
    border:1px solid rgba(255,255,255,.78);
    border-radius:25px;
    background:rgba(248,244,236,.92);
    box-shadow:0 17px 45px rgba(38,26,17,.20),inset 0 1px 0 rgba(255,255,255,.92);
    backdrop-filter:blur(28px) saturate(145%);
    -webkit-backdrop-filter:blur(28px) saturate(145%);
  }
  .mos-dock-item{
    min-width:0;
    min-height:50px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    border-radius:17px;
    color:#66513f;
    text-decoration:none;
    transition:transform 140ms ease,color 140ms ease,background-color 140ms ease;
  }
  .mos-dock-item:active{transform:scale(.96);background:rgba(224,207,185,.46)}
  .mos-dock-item svg{width:19px;height:19px}
  .mos-dock-item span{font:700 10px/1 Inter,Arial,sans-serif;white-space:nowrap}

  /* Keep the shared content below the launcher readable and reachable. */
  body.page-home #alanlar{scroll-margin-top:12px}
}

@media(max-width:359px){
  body.page-home .home-top-shell .hero-wall-copy{padding-inline:16px}
  body.page-home .home-top-shell .hero-wall-copy h1{font-size:22px}
  .mobile-legal-os{padding-inline:10px}
  .mos-app-grid{gap:10px}
  .mos-app-box{min-height:138px;padding:14px 12px}
  .mos-app-box h3{font-size:13px}
  .mos-app-sub{font-size:10.5px}
}

@media(min-width:480px) and (max-width:760px){
  body.page-home .home-top-shell .hero-wall-copy{padding-inline:24px}
  .mobile-legal-os{padding-inline:24px}
  .mos-shell{max-width:580px}
}

@media(prefers-reduced-motion:reduce){
  .mos-tile,.mos-dock-item{transition:none!important}
  .mos-tile:active,.mos-dock-item:active{transform:none!important}
}


/* Desktop hero: compact, self-contained urban-transformation carousel */
@media(min-width:761px){
  .featured-study-slider{overflow:hidden}
  .featured-study-viewport{
    width:100%;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    overscroll-behavior-x:contain;
  }
  .featured-study-viewport::-webkit-scrollbar{display:none}
  .featured-study-track{display:flex;width:100%}
  .featured-study-slide{
    flex:0 0 100%;
    min-width:0;
    scroll-snap-align:start;
  }
  .featured-study-slide h2{margin-top:0}
  .featured-study-controls{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:16px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.16);
  }
  .featured-study-prev,.featured-study-next{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    padding:0;
    border:1px solid currentColor;
    border-radius:50%;
    background:transparent;
    color:inherit;
    font:600 16px/1 Arial,sans-serif;
    cursor:pointer;
    opacity:.72;
  }
  .featured-study-prev:hover,.featured-study-next:hover,
  .featured-study-prev:focus-visible,.featured-study-next:focus-visible{opacity:1}
  .featured-study-dots{display:flex;align-items:center;justify-content:center;gap:6px}
  .featured-study-dot{
    display:block;
    width:5px;
    height:5px;
    border-radius:50%;
    background:currentColor;
    opacity:.28;
  }
  .featured-study-dot.is-active{opacity:.9}
}

@media(min-width:761px){
  .featured-study-category{
    margin-bottom:8px;
    font:700 9px/1.25 Inter,Arial,sans-serif;
    letter-spacing:.11em;
    text-transform:uppercase;
    opacity:.58;
  }
  .featured-study-progress{
    min-width:52px;
    text-align:center;
    font:600 10px/1 Inter,Arial,sans-serif;
    letter-spacing:.08em;
    opacity:.58;
  }
}


/* Homepage practice areas + legal updates */
.practice-news-layout{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);
  gap:34px;
  align-items:start;
}
.practice-area-heading{
  max-width:684px;
  margin-bottom:25px;
}
.practice-area-heading h2,
.home-legal-updates h2{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:500;
  letter-spacing:-.025em;
}
.practice-area-heading h2{
  margin:8px 0 0;
  font-size:clamp(34px,4vw,54px);
  line-height:1.03;
}
.practice-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
.practice-card-grid .area-card{
  min-height:183px;
  padding:18px;
}
.practice-card-grid .area-card h3{
  margin:14px 0 10px;
  font-size:22px;
}
.practice-card-grid .area-card p{
  font-size:12px;
}
.practice-card-grid .area-card .arrow{
  margin-top:14px;
  font-size:10.5px;
}
.home-legal-updates{
  min-width:0;
  padding-left:32px;
  border-left:1px solid var(--line);
}
.home-legal-updates h2{
  margin:8px 0 22px;
  font-size:clamp(34px,3.2vw,46px);
  line-height:1.05;
}
.home-legal-updates-viewport{
  height:336px;
  overflow:hidden;
  border-top:1px solid var(--line);
}
.home-legal-updates-list{
  will-change:transform;
}
.home-legal-update{
  display:block;
  height:168px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
  color:var(--ink);
  text-decoration:none;
  overflow:hidden;
}
.home-legal-update-meta{
  margin-bottom:7px;
  color:var(--accent);
  font-size:10px;
  font-weight:600;
  letter-spacing:.08em;
  line-height:1.4;
  text-transform:uppercase;
}
.home-legal-update h3{
  margin:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:24px;
  font-weight:600;
  line-height:1.08;
}
.home-legal-update p{
  margin:8px 0 0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  color:var(--muted);
  font-size:12.5px;
  line-height:1.55;
}
.home-legal-update:hover h3{
  color:var(--accent);
}
.home-legal-updates-all{
  display:inline-block;
  margin-top:17px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.03em;
}
@media(max-width:1000px){
  .practice-news-layout{grid-template-columns:1fr;gap:42px}
  .home-legal-updates{padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}
}
@media(max-width:760px){
  .practice-area-heading{margin-bottom:22px}
  .practice-area-heading h2{font-size:36px}
  .practice-card-grid{grid-template-columns:1fr}
  .practice-card-grid .area-card{min-height:183px}
  .home-legal-updates h2{font-size:34px}
}
