/* PSG bridge overrides broad legacy global CSS */
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap");

/* Colors */

:root {
  --psg-page-bg:#faf7f0;
  --psg-green:#0b5f2a;
  --psg-green-dark:#063d1c;
  --psg-gold:#c9972f;
  --psg-sand:#f5efe3;
  --psg-ink:#18221b;
  --psg-muted:#637064;
  --psg-card:#ffffff;
  --psg-border:#e5ddcf;
}

/* Typography */

body.psg-bridge {
    font-family: "Lato", sans-serif;
    background: var(--psg-page-bg);
    margin: 0;
    padding: 0;
    text-align: center;
}

body .psg-page {
    font-family: "Lato", sans-serif !important;
}

.maincontent h1,
.maincontent h2,
.maincontent h3,
.maincontent h4,
.maincontent h5,
.maincontent h6 {
    font-family: "Lato", sans-serif;
    font-weight: 300;
}

.maincontent h1,
.maincontent h2,
.maincontent h3,
.maincontent h4 {
    font-weight: 700;
}

.maincontent h1 {
    font-size: 2rem;
}

.maincontent h2 {
    font-size: 1.7rem;
}

.psg-bridge #c2a-bookteetimes H2,
.psg-bridge #c2a-freegolfquote H2 {
	font-family: "Lato", sans-serif;
 }

strong,
b {
    font-weight: 700;
}

.psg-bridge .maincontent P {
	font-size: 16px;
}

.maincontent.secondary LI {
  font-size: 1em;
}


/* Base page shell */
body.psg-bridge {
  background-color: var(--psg-page-bg);
  margin:0;
  padding:0;
  text-align:center;
  color:var(--psg-ink);
}

#wrapper {
  max-width:62.5em;
  margin:0 auto;
  text-align:left;
  background-color:#fff;
  padding-bottom: 0;
  -webkit-border-bottom-right-radius: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -moz-border-radius-bottomleft: 0px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
}

.content-wrap {
  padding:0 24px 36px;
}

.psg-page {
  line-height:1.58;
}

a:hover {
  text-decoration:none;
}

img#logo {
  max-width:none;
}



/* Header */
.site-header-modern {
  background:#fff;
  border-bottom:1px solid var(--psg-border);
}

.brandbar {
  background:#fff;
  padding:18px 0;
}

.brandbar-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.brandbar-logo img {
  display:block;
  max-width:300px;
  height:auto;
}

.brandbar-right {
  text-align:right;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}

.brandbar-keywords {
  font-size:.95rem;
  font-weight:700;
  color:var(--psg-green-dark);
  letter-spacing:.01em;
}

.brandbar-keywords a {
  color:var(--psg-green-dark);
  text-decoration:none;
}

.brandbar-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
}

.brandbar-phone {
  color:var(--psg-muted);
  font-size:.92rem;
  line-height:1.25;
}

.brandbar-phone strong a {
  color:var(--psg-green-dark);
  font-size:1.24rem;
  text-decoration:none;
}

@media (max-width:640px){
	.brandbar-keywords {
  		padding: 0 1rem 1rem;
	}
	.brandbar-phone {
  		display: none;
	}
	.brandbar-btn {
  		align: center;
	}
}

.psg-bridge #header {
	background: none;
	border-bottom: none;
}

/* Existing Foundation top-bar navigation, preserved in orange for site continuity. */
.top-bar {
  background:#fcac43;
  background:linear-gradient(to bottom,#fcac43 0,#d17416 100%);
  border-bottom:1px solid #a86505;
  margin-bottom:0;
}

.top-bar .toggle-topbar a {
  color:#000 !important;
}

.top-bar .toggle-topbar.menu-icon a span,
.top-bar.expanded .toggle-topbar a span {
  box-shadow:0 10px 0 1px #000,0 16px 0 1px #000,0 22px 0 1px #000;
}

.top-bar-section ul,
.top-bar-section ul li>a {
  background:transparent !important;
}

.top-bar.expanded,
.top-bar.expanded .title-area {
  background:#fcac43;
  background:linear-gradient(to bottom,#fcac43 0,#d17416 100%);
}

.top-bar.expanded ul.left li {
  border-bottom:1px solid #000;
}

.top-bar-section ul.left li {
  border-right:1px solid #9f6000;
  border-left:1px solid #fcad43;
}

.top-bar-section ul li>a {
  color:#000;
  font-weight:700;
  text-decoration:none;
}



.maincontent {
	background: none;
}



/* ---------- Footer ---------- */

.site-footer{
    background:var(--psg-green-dark);
    color:rgba(255,255,255,.85);
}

.footer-top{
    display:flex;
    align-items:center;

    padding:2rem 0;

    border-bottom:1px solid rgba(255,255,255,.12);
}

.footer-logo img{
    max-width:180px;
    height:auto;
}

.footer-main{
    text-align:center;
}

.footer-cta{
    margin:0 0 .6rem;

    color:#fff;

    font-family:"Lato",sans-serif;
    font-size:1rem;
    font-weight:400;
}

.footer-cta strong{
    font-weight:900;
}

.footer-cta a {
    color:#fff;
}

.footer-nav{
    font-size:.9rem;
}

.footer-nav a{
    color:rgba(255,255,255,.9);
    text-decoration:none;
}

.footer-nav a:hover{
    color:#fff;
}

.footer-nav span{
    margin:0 .6rem;
    color:rgba(255,255,255,.35);
}

.footer-x-icon{
    width:1.4rem;
    height:1.4rem;
    display:block;
    fill:currentColor;
}

.footer-social{
    text-align:right;
}

.footer-social a{
    color:#fff;
    text-decoration:none;
}

.footer-social i{
    font-size:1.5rem;
}

.footer-social a:hover{
    color:var(--psg-gold);
}

/* Bottom */

.footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:1rem 0;
}

.footer-bottom p{
    margin:0;
    color:rgba(255,255,255,.7);
	font-size:.82rem;
}


/* ---------- Footer - Responsive ---------- */

@media (max-width:640px){

    .footer-top{
        display:block;
        padding:2rem 0 1.75rem;
        text-align:center;
    }

    .footer-logo{
        margin-bottom:1.25rem;
        text-align:center;
    }

    .footer-logo img{
        max-width:150px;
    }

    .footer-main{
        margin-bottom:1.25rem;
    }

    .footer-cta{
        font-size:.95rem;
        line-height:1.5;
        margin-bottom:1rem;
    }

    .footer-nav{
        line-height:1.9;
    }

    .footer-nav span{
        margin:0 .4rem;
    }

    .footer-social{
        text-align:center;
    }

    .footer-social i{
        font-size:1.6rem;
    }
	
		.footer-x-icon{
    margin: 0 auto;
}

    .footer-bottom{
        display:block;
        padding:1.25rem 0;
        text-align:center;
    }

    .footer-bottom .text-right{
        text-align:center !important;
        margin-top:.5rem;
    }

    .footer-bottom p{
        font-size:.78rem;
        line-height:1.5;
    }

}

/* ---------- Footer - Landscape Phones ---------- */

@media (min-width:641px) and (max-width:800px){

    .footer-top{
        display:block;
        padding:2rem 0 1.75rem;
        text-align:center;
    }

    .footer-logo{
        margin-bottom:1.25rem;
        text-align:center;
    }

    .footer-logo img{
        max-width:150px;
    }

    .footer-main{
        margin-bottom:1.25rem;
    }

    .footer-cta{
        font-size:.95rem;
        line-height:1.5;
        margin-bottom:1rem;
    }

    .footer-nav{
        line-height:1.9;
    }

    .footer-nav span{
        margin:0 .4rem;
    }

    .footer-social{
        text-align:center;
    }

    .footer-x-icon{
        margin:0 auto;
    }

.footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:1rem 0;
}

.footer-bottom p{
    font-size:.82rem;
}

.footer-bottom .text-right{
    text-align:right !important;
}

}

/* Media queries */
@media only screen and (min-width:640px) {
  .top-bar-section ul.left {
    width:100%;
  }

  .top-bar-section ul.left li {
    padding:0;
    width:14.2%;
    text-align:center;
  }

  .top-bar-section ul.left li.lastnavitem {
    border-right:none;
  }

  .top-bar-section ul.left li>a {
    padding:0;
    font-size:.5em !important;
  }
}

@media only screen and (min-width:860px) {
  .top-bar-section ul.left li>a {
    font-size:.75em !important;
  }
}

@media (max-width:900px) {
  .brandbar-inner {
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .brandbar-right {
    align-items:center;
    text-align:center;
  }

  .brandbar-actions {
    justify-content:center;
    flex-wrap:wrap;
  }

}

@media (max-width:640px) {
  .content-wrap {
    padding:0 0 36px !important;
  }
}
 





/* BUTTONS Homepage prototype.
   Move to psg-refresh.css once finalized. */

.btn-primary{
    background:var(--psg-green);
    color:#fff !important;

    border:1px solid rgba(255,255,255,.35);
    border-radius:9px;

    padding:13px 22px;

    box-shadow:
        0 0 0 1px rgba(255,255,255,.12),
        0 8px 18px rgba(0,0,0,.18);

    transition:
        background .18s ease,
        transform .18s ease,
        box-shadow .18s ease;
		
	font-family:"Lato",sans-serif;	
    text-transform: uppercase;
	font-size: .92rem;
	font-weight: 700;
    text-decoration:none;
}

.btn-primary:hover{
    background: #084d22;
    color:#fff !important;
}

/* Homepage prototype only.
   Eventually move to psg-refresh.css */

.btn-secondary{
    display:inline-block;

    background:var(--psg-gold);
    color:#FFF !important;

    border:1px solid rgba(0,0,0,.08);
    border-radius:9px;

    padding:13px 22px;

    font-family:"Lato",sans-serif;
    font-size:.92rem;
    font-weight:700;
    text-transform:uppercase;

    box-shadow:0 4px 12px rgba(0,0,0,.12);

    transition:
        background .18s ease,
        box-shadow .18s ease;
}

.btn-secondary:hover{
    background:#E0AE1F;
    box-shadow:0 6px 14px rgba(0,0,0,.15);
}

.btn-tertiary{
    background:#fff;
    color:var(--psg-green);
    border:2px solid var(--psg-green);
    border-radius:9px;
    font-family:"Lato",sans-serif;
	font-weight:700;
    text-transform:uppercase;
}

.btn-tertiary:hover{
    background:var(--psg-green);
    color:#fff;
}

.btn-light{
    border-radius:9px;
	background:#fff;
    color:var(--psg-green-dark);
    border:2px solid #fff;
	font-family:"Lato",sans-serif;
    font-weight:800;
    box-shadow:0 2px 8px rgba(0,0,0,.12);
}

.btn-light:hover{
    background:var(--psg-sand);
    border-color:var(--psg-sand);
    color:var(--psg-green-dark);
}



.btn-tiny{
    padding:.42rem .75rem;
    font-size:.72rem;
    line-height:1.1;
}

.btn-sm{
    padding:.55rem 1rem;
    font-size:.8rem;
    font-weight:700;
}

.btn-md{
    padding:.85rem 1.4rem;
    font-size:.95rem;
}

.btn-lg{
    padding:1rem 1.75rem;
    font-size:1rem;
}


#main_body input.button_text {
	text-shadow: none !important;
}
